Python使用中常见问题总结(三)
尊敬的读者您好:笔者很高兴自己的文章能被阅读,但原创与编辑均不易,所以转载请必须注明本文出处并附上本文地址超链接以及博主博客地址:https://blog.csdn.net/vensmallzeng。若觉得本文对您有益处还请帮忙点个赞鼓励一下,笔者在此感谢每一位读者,如需联系笔者,请记下邮箱:zengzenghe@gmail.com,谢谢合作!
一、字典的常见用法
1、创建字典
① 创建非空字典
dict = {"name": "贺增增" , "idol": "许嵩", "time": "13"}
② 创建空字典
dict = {}
2、对字典中元素做修改
① 对key为"time"的值进行修改,若字典中若没有该key,则创建该键值;
dict["time"] = 100
② 对key为"idol"的值进行删除
dict.pop("idol")
3、字典的遍历
① 默认按键名进行遍历,得到以键形式的输出
for a in dict:print(a)
② 和①的结果一样,得到以键形式的输出
for b in dict.keys():print(b)
③ 按值进行遍历,得到以值形式的输出
for b in dict.values(): print(b)
④ 按键值对进行遍历,得到以元组形式的输出
for c in dict.items():print(c)
⑤ 按键值对进行遍历,得到以键名和键值的输出
for k,v in dict.items(): print(k,v)
二、List的常见用法
1、创建list
① 创建非空list
list = ["贺增增", "许嵩", "许嵩N代弟子"]
② 创建空字典
list = []
2、对字典中元素做修改
① 为字典增加元素;
#方式一 append() 追加单个元素到list的尾部
music = ["如果当时", "灰色头像", "如约而至"]
list.append(music)
print(list)
output:["贺增增", "许嵩", "许嵩N代弟子", [“如果当时”, "灰色头像", "如约而至"]]#方式二 extend() 将一个列表中每个元素分别添加到另一个列表中
music = ["如果当时", "灰色头像", "如约而至"]
list.extend(music)
print(list)
output:["贺增增", "许嵩", "许嵩N代弟子", "如果当时", "灰色头像", "如约而至"]#方式三 insert() 将一个元素插入到列表中
list.insert(1,'薛之谦')
print(list)
output:["贺增增", "薛之谦", "许嵩", "许嵩N代弟子"]#方式四 + 加号,将两个list相加,会返回到一个新的list对象。
album = [”梦游计“, ”青年晚报“]
list_new = list + album
print(list_new)
output:["贺增增", "薛之谦", "许嵩", "许嵩N代弟子", ”梦游计“, ”青年晚报“]
注:方法四与前三种方法的区别,前面三种方法(append, extend, insert)可对列表增加元素的操作,它们没有返回值,是直接修改了原数据对象。 而方法四是将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()方法。
② 对list的值进行删除
#方式一 remove() 删除指定位置的元素
list.remove(2)
print(list)
output:["贺增增", "许嵩N代弟子"]#方式二 del list[*] 删除指定元素
del list[0]
print(list)
output:["许嵩", "许嵩N代弟子"]#方式三 pop(1) 弹出指定倒数位置的元素(默认最后一个元素)
list.pop()
print(list)
output:["贺增增", "许嵩"]
3、列表的遍历
#方法一
for i in list:print ("序号:%s 值:%s" % (list.index(i) + 1, i))#方法二
for i in range(len(list)):print ("序号:%s 值:%s" % (i + 1, list[i]))#方法三
for i, val in enumerate(list):print ("序号:%s 值:%s" % (i + 1, val))#方法四
for i, val in enumerate(list, 2):print ("序号:%s 值:%s" % (i + 1, val))
三、txt文本的常见读取方式
1、按行读取(with读取)
with open(filename, 'r', encoding='UTF-8') as f:lines = f.readlines()
2、按行读取(普通读取)
# 打开文件,循环读取lines = open(filename, 'r')
for line in lines:print(line)
2、按列读取(df方式)
# 导入数据
df = pd.read_csv("./data/all_available_features.txt", sep='\001', header=0)# 将数据按列读取
df.columns = ["unionid", "gender", "big_room", "big_room_ratio", "single_room", "single_room_ratio","standard_room", "standard_room_ratio", "family_room", "family_room_ratio", "superior_room","superior_room_ratio", "other_room", "other_room_ratio", "all_room", "summer_holiday","summer_holiday_ratio", "winter_holiday", "winter_holiday_ratio", "minor_holiday","minor_holiday_ratio", "weekend_holiday", "weekend_holiday_ratio", "other_holiday","other_holiday_ratio", "mem_basic", "mem_outgoing", "mem_marriage", "mem_education","mem_certification", "mem_stayArea", "mem_stayCity", "mem_age", "mem_sex", "mem_assets","mem_constellation", "mem_social_stratum", "mem_area", "mem_city", "mem_career","mem_birthday", "mem_mail", "label"]# 以ndarray格式按行存储,X的一行代表一个样本
X = df[["gender", "big_room", "big_room_ratio", "single_room", "single_room_ratio","standard_room", "standard_room_ratio", "family_room", "family_room_ratio", "superior_room","superior_room_ratio", "other_room", "other_room_ratio", "all_room", "summer_holiday","summer_holiday_ratio", "winter_holiday", "winter_holiday_ratio", "minor_holiday","minor_holiday_ratio", "weekend_holiday", "weekend_holiday_ratio", "other_holiday","other_holiday_ratio", "mem_basic", "mem_outgoing", "mem_marriage", "mem_education","mem_certification", "mem_stayArea", "mem_stayCity", "mem_age", "mem_sex", "mem_assets","mem_constellation", "mem_social_stratum", "mem_area", "mem_city", "mem_career","mem_birthday", "mem_mail"]]X = np.array(X)
四、时间间隔的常见计算方式
1、调用datetime库进行计算时间间隔
def compare_time(time1, time2):d1 = datetime.datetime.strptime(time1, '%Y-%m-%d')d2 = datetime.datetime.strptime(time2, '%Y-%m-%d')delta = d1 - d2print("days is:{}".format(delta.days))if delta.days >= 0:return delta.dayselse:return -1
2、对只包含时间元素的list进行排序
#list_Data将所有的time(如:2015-10-01)存储起来
list_Data.append(time)
#对只包含时间元素的list_Data进行升序排序
sorted(list_Data, key=lambda date: datetime.datetime.strptime(date, '%Y-%m-%d').timestamp())
日积月累,与君共进,增增小结,未完待续。
Python使用中常见问题总结(三)相关推荐
- python面试常见问题-Python面试常见问题,涉及Python各个方面
原标题:Python面试常见问题,涉及Python各个方面 爬虫面试常见问题 一.项目问题: 1.你写爬虫的时候都遇到过什么反爬虫措施,你是怎样解决的 2.用的什么框架.为什么选择这个框架 二.框架问 ...
- python 基础课程第三天
文章目录 python 基础课程第三天 字符串 可变字符串 基本运算符 复合赋值运算符 运算符优先级 序列 列表简介 列表的创建 基本语法[]创建 list()创建 range()创建整数列表 推导式 ...
- python学习之第三课时--基本数据类型及区别,变量
python学习之第三课时--基本数据类型及区别,变量 基本数据类型及区别 1. 数字类型(int) 数字型--变量值直接是数字,没有双引号"" 整数 2. 浮点数(float ...
- Python 发送 email 的三种方式
Python发送email的三种方式,分别为使用登录邮件服务器.使用smtp服务.调用sendmail命令来发送三种方法 本文原文自米扑博客:Python 发送 email 的三种方式 Python发 ...
- 测试Python下载图片的三种方法
简 介: 通过Python软件包对网络URL图片链接进行下载,可以加快后期处理.本文测试了urllib, request两个软件包对图片进行下载效果.如果图片原网页有了防止下载机制,是无法下载图片. ...
- python基础教程第三版电子版百度云-《python基础教程第三版》高清版PDF免费下载...
下载地址1:http://t.cn/EGxO1sW Python基础教程 第3版Python简明教程书籍 Python编程从入门到实践 灵程序设计丛书 <python基础教程第三版>高清版 ...
- python学习音频-详解python播放音频的三种方法
第一种 使用pygame模块 pygame.mixer.init() pygame.mixer.music.load(self.wav_file) pygame.mixer.music.set_vol ...
- python程序实例教程基础-python基础教程第三版源代码
[实例简介] python基础教程第三版源代码 python基础教程第三版源代码 [实例截图] [核心代码] Beginning_Python_version3_SourceCode └── Begi ...
- python变量运算符_Python(三) 变量与运算符
一.什么是变量 变量 = [1,2] 二.变量的命名规则 字母,数字,下划线,首字母不能是数字 系统关键字 不能用在变量名中 保留关键字 区别大小写 a=1, a='1', a=(1,2), ...
最新文章
- visual studio 自动整理代码
- Linux网络编程 | 信号 :信号函数、信号集、统一事件源 、网络编程相关信号
- Haystack 太强了!存 2600 亿图片
- PyTorch系列 (二): pytorch数据读取自制数据集并
- 支撑百万级并发,Netty如何实现高性能内存管理
- Homebrew 更换阿里云镜像源
- c c++ 宏定义中#, ##, #@的含义
- 中国生物医药产业集群产业战略布局及运营管理模式分析报告2021-2027年
- visio2010最新密钥
- SpringBoot+POI方式导出excel【加水印】
- android 程序控制开关飞行模式,android开关飞行模式的方法
- 使用腾讯云服务器搭建鸿蒙操作系统编译环境
- 2021金融科技领域最具商业合作价值企业盘点
- 用JavaScript实现烟花效果
- 还在手写记单词?使用Python开发练习英语单词,助你逆袭单词记忆王!
- Flutter中的widget
- 实时文件同步软件--端端(Clouduolc)的诞生小记
- 智能家居-电热水器工作原理(转载)
- Windows环境安装MySQL步骤
- 为什么百度蜘蛛不对网站进行抓取?