python常用代码总结2

news/2024/5/3 6:27:11/文章来源:https://blog.csdn.net/qimo601/article/details/128124561

1、列表的常规追加元素、追加列表操作

(1)列表追加多个元素,比如追加0-9

ls = []
ls.extend(list(range(10)))ls
Out[20]: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

(2)列表追加多个相同的元素,比如追加10个0

ls1 = []
for i in range(10):ls1.append(0)ls1
Out[23]: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

列表推导式 

ls2 = []
ls2.extend([0 for _ in range(10)])
ls2
Out[27]: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
In[57]: list4 = [i for _ in range(2) for i in range(1, 4)]...: print(list4)...: 
[1, 2, 3, 1, 2, 3]
In[58]: list4 = [i  for i in range(1, 4) for _ in range(2)]...: print(list4)...: 
[1, 1, 2, 2, 3, 3]

(3列表追加一个已有列表

ls3 =[]
expected_list = [1.2,2.3,3.4,5.6]
ls3.extend(expected_list)
ls3
Out[31]: [1.2, 2.3, 3.4, 5.6]

(4)列表中追加一个二维列表的一行或一列

ls4 = []
expected_list = [[1.2,2.3],[3.4,5.6],[7.0,8.0]] #3行2列
ls4.extend(expected_list[1]) #追加第二行
ls4
Out[44]: [3.4, 5.6]

(5)列表中可以追加不同长度的列表

lstwo  = []
In[49]: 
lstwo.append(ls1)
lstwo.append(ls2)
lstwo.append(ls3)
lstwo.append(ls4)
lstwo
Out[54]: 
[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],[],[3.4, 5.6]]

2、numpy array 读写文件

读取混合数据类型的数据,我们可以object的类型追读写文件。读Object对象的时候必须开启allow_pickle =True.(允许使用Python pickles保存、读取对象数组)

x = np.array([[1, 1, 1], ['a', 'b', 'c'],[1,'a',0.654321]], dtype=object)
np.save('my_data',x)
y = np.load('my_data.npy',allow_pickle=True)

(1)numpy.save()函数
保存一个数组到一个二进制的文件中,保存格式是.npy

参数介绍:
numpy.save(file, arr, allow_pickle=True, fix_imports=True)

file:文件名/文件路径
arr:要存储的数组
allow_pickle:布尔值,允许使用Python pickles保存对象数组(可选参数,默认即可)
fix_imports:为了方便Pyhton2中读取Python3保存的数据(可选参数,默认即可)

2)numpy.savez
这个同样是保存数组到一个二进制的文件中,但是厉害的是,它可以保存多个数组到同一个文件中,保存格式是.npz,它其实就是多个前面np.save的保存的npy,再通过打包(未压缩)的方式把这些文件归到一个文件上,不行你去解压npz文件就知道了,里面是就是自己保存的多个npy.。

参数介绍:

numpy.savez(file, *args, **kwds)

file:文件名/文件路径
*args:要存储的数组,可以写多个,如果没有给数组指定Key,Numpy将默认从'arr_0','arr_1'的方式命名
kwds:(可选参数,默认即可)

x2= np.arange(10)
x3= np.random.randn(10)
np.savez('my_data',x2,x3)
npzfile=np.load('my_data.npz') 
x21=npzfile['arr_0']
x31=npzfile['arr_1']

 你可以不适用Numpy默认给数组的Key,而是自己给数组命名有意义的Key,这样就可以不用自己指定变量名'arr_0','arr_1'了

x2= np.arange(10)
x3= np.random.randn(10)
np.savez('my_data',x2=x2,x3=x3)
npzfile=np.load('my_data.npz') 
x2=npzfile['x2']
x2=npzfile['x3']

3、numpy.save()函数直接存储复杂dict,包含列表,字符串,数值,然后再读取。

dict1 ={'name': ['jack1', 'jack2', 'jack3', 'jack4'],'sex': ['男', '女', '男', '女'],'grade': [99.1, 99.2, 99.3, 99.4]}dict
Out[39]: 
{'name': ['jack1', 'jack2', 'jack3', 'jack4'],'sex': ['男', '女', '男', '女'],'grade': [99.1, 99.2, 99.3, 99.4]}np.save('dict.npy', dict)
load_dict = np.load('dict.npy', allow_pickle=True).item()load_dict
Out[42]: 
{'name': ['jack1', 'jack2', 'jack3', 'jack4'],'sex': ['男', '女', '男', '女'],'grade': [99.1, 99.2, 99.3, 99.4]}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_228394.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

直播邀请函 | 第12届亚洲知识产权营商论坛:共建创新价值 开拓崭新领域

由香港特别行政区政府、香港贸易发展局及香港设计中心共同举办的亚洲知识产权营商论坛,每年为世界各地知识产权业界专家、商界领袖提供一个理想平台,共同探讨亚洲知识产权市场的最新发展,发掘更多商机。 去年,论坛共邀请70余位国…

聚观早报 | 中国茶申遗成功;特斯拉市值蒸发4个推特

今日要闻:中国茶申遗成功;特斯拉市值蒸发4个推特;iPhone14Pro出货量预期下调;FF91距交付仅剩一步之遥;AI绘画一天新增60万用户中国茶申遗成功 11月29日晚,我国申报的“中国传统制茶技艺及其相关习俗”在摩洛…

[附源码]JAVA毕业设计高速公路服务区管理系统(系统+LW)

[附源码]JAVA毕业设计高速公路服务区管理系统(系统LW) 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项…

最全面的Spring教程(五)——文件上传与下载

前言 本文为 【SpringMVC教程】文件上传与下载 相关知识&#xff0c;具体将对使用MultipartResolver处理文件上传的步骤&#xff0c;两种文件下载方式&#xff08;直接向response的输出流中写入对应的文件流、使用 ResponseEntity<byte[]>来向前端返回文件&#xff09;等…

智慧城市运营中心建设方案(SCOC)智慧城市的心脏

一、大数据&#xff1a;智慧城市的基础与引擎 中国每天正以消失100个村庄的速度快速步入城镇化&#xff0c;未来10年内将有5亿以上的人涌入城市。这无疑会给城市的建设带来巨大的压力&#xff0c;城市资源有限&#xff0c;规模不可能无限扩张&#xff0c;城市在就业、教育、住房…

HashMap底层数据结构,扩容机制

HashMap的底层结构是数组链表 没有哈希冲突的元素放在数组里面&#xff0c; 哈希冲突的元素用链表串起来 初始数组长度是16&#xff0c;对应源码&#xff1a; static final int DEFAULT_INITIAL_CAPACITY1; 最大的容量为2的30次方&#xff0c;一个很大很大很大的数 还定义了…

多个JDK版本可以吗:JDK17、JDK19、JDK1.8轻松切换(无坑版)小白也可以看懂

多个版本JDK切换 多个JDK&#xff1a;JDK17、JDK19、JDK1.8轻松切换&#xff08;无坑版&#xff09;小白也可以看懂 提示&#xff1a;看了网上很多教程&#xff0c;5w观看、32w观看、几千观看的&#xff0c;多多少少带点坑&#xff0c;这里我就把踩过的坑都给抹了 文章目录多个…

【数据结构】二叉树的运算

********************************************************************************************************* 本文作者科大MF22某班Noah懒羊羊同学&#xff0c;为大家提供一个作业思路&#xff0c;请勿直接copy&#xff01;&#xff01;&#xff01;一起进步学习~ ******…

极值分析:分块极大值BLOCK-MAXIMA、阈值超额法、广义帕累托分布GPD拟合降雨数据时间序列...

全文链接&#xff1a;http://tecdat.cn/?p25348 你们可能知道&#xff0c;实际极值分析有两种常用方法&#xff1a;分块极大值Block-maxima、阈值超额法threshold excess&#xff08;点击文末“阅读原文”获取完整代码数据&#xff09;。今天&#xff0c;我们将分别介绍这两种…

【毕业设计】10-基于单片机的车站安检门_磁性霍尔传感器系统设计(原理图+源码+仿真工程+答辩论文)

【毕业设计】10-基于单片机的车站安检门/磁性霍尔传感器系统设计&#xff08;原理图源码仿真工程答辩论文&#xff09; 文章目录【毕业设计】10-基于单片机的车站安检门/磁性霍尔传感器系统设计&#xff08;原理图源码仿真工程答辩论文&#xff09;任务书设计说明书摘要设计框架…

【数据结构】Java实现数据结构的前置知识,时间复杂度空间复杂度,泛型类的讲解

文章目录数据结构时间复杂度、空间复杂度包装类、装箱与拆箱泛型擦除机制数据结构 当我们在成为一名程序员的这条道路上努力的时候&#xff0c;我们一定经常听到这个词数据结构。那么究竟什么是数据结构呢&#xff1f;数据结构顾名思义&#xff0c;就是数据结构&#xff0c;数…

【深度学习】详解 CLIP

目录 摘要 一、引言和激励性工作 二、方法 2.1 自然语言监督 2.2 创建一个足够大的数据集 2.3 选择一种有效的预训练方法 2.4 选择和放缩一个模型 2.5 训练 三、实验 3.1 零次迁移 3.1.1 激励 Github&#xff1a;GitHub - openai/CLIP: Contrastive Language-Image …

Android 导航之Navigation 组件的介绍与使用

1、介绍&#xff1a; 在以前的应用中&#xff0c;针对多导航模块的使用&#xff0c;常见的有tabhost或者FragmentTabHost&#xff0c;但是这些在使用的过程中&#xff0c;非常臃肿&#xff0c;包括加载和管理也不如人意。在AndroidX中&#xff0c;官方引入Navigation模块&#…

Spring | IOC技术之Bean的配置与实例化

&#x1f451; 博主简介&#xff1a;    &#x1f947; Java领域新星创作者    &#x1f947; 阿里云开发者社区专家博主、星级博主、技术博主 &#x1f91d; 交流社区&#xff1a;BoBooY&#xff08;优质编程学习笔记社区&#xff09; 文章目录Bean的基础配置1、id 与 cla…

Anaconda默认安装在C:\Users\xxx\.conda\envs中

目录 问题&#xff1a; 解决&#xff1a; 更改默认安装位置 移动已安装环境 问题&#xff1a; 解决&#xff1a; 更改默认安装位置 用记事本打开 C:\Users\zqk\.condarc 在最后插入 envs_dirs: - D://anzhuang//Anaconda3//envs 如若需更改pkgs&#xff0c;插入如下代…

OTA: Optimal Transport Assignment for Object Detection 原理与代码解读

paper&#xff1a;OTA: Optimal Transport Assignment for Object Detection code&#xff1a;https://github.com/Megvii-BaseDetection/OTA 背景 标签分配&#xff08;Label Assignment&#xff09;是目标检测中重要的一环&#xff0c;经典的标签分配策略采用预定义的规则…

Caffeine 源码、架构、原理(史上最全,10W字 超级长文)

文章很长&#xff0c;而且持续更新&#xff0c;建议收藏起来&#xff0c;慢慢读&#xff01;疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 &#xff1a; 免费赠送 :《尼恩Java面试宝典》 持续更新 史上最全 面试必备 2000页 面试必备 大厂必备 涨薪必备 免费赠送 经典…

【剧前爆米花--爪哇岛寻宝】面向对象的三大特性——封装、继承以及多态的详细剖析(中——多态)。

作者&#xff1a;困了电视剧 专栏&#xff1a;《JavaSE语法与底层详解》 文章分布&#xff1a;这是一篇关于Java面向对象三大特性——多态的文章&#xff0c;在本篇文章中我会分享多态的一些基础语法以及类在继承时代码的底层逻辑和执行顺序。 目录 多态的定义及实现条件 多态…

【程序人生】4年创作纪念日,不忘初心,继续前行

&#x1f4eb;作者简介&#xff1a;小明java问道之路&#xff0c;专注于研究 Java/ Liunx内核/ C及汇编/计算机底层原理/源码&#xff0c;就职于大型金融公司后端高级工程师&#xff0c;擅长交易领域的高安全/可用/并发/性能的架构设计与演进、系统优化与稳定性建设。 &#x1…

CleanMyMac X2022苹果电脑专业清理Mac加速器软件

CleanMyMac X2023最新免费版苹果电脑专业清理软件&#xff0c;对于Mac电脑用户来说&#xff0c;Cleanmymac X是一款再熟悉不过的电脑清理软件&#xff0c;它是由苹果认证并对外承认的一款第三方清理软件&#xff0c;几乎有95%的Mac用户都会安装并使用&#xff0c;Cleanmymac X究…