第五天元组、字典
admin
2023-07-23 13:01:47
0

for执行 1:找到下标
2:下标对应的值取出来

lists = [10,20,30,40,50]
for i in lists:
lists.remove(i)
print(lists)
执行结果:[20, 40]
原因:下标变了
在同一个列表中不能同时做遍历和删除
切割ok、重新赋值ok、内存id()

解决方法:要删除数据用空列表记录下来,
遍历记录的列表
从原来的列表中删除数据
lists = [10,20,30,40,50]
tem_list = []
for k in lists:
tem_list.append(k)
for a in tem_list:
lists.remove(a)
print(lists)
直接赋值,结果仍然不对,没有新开辟内存空间,用的仍是一个地方,所以不行,lists和tem_list都是[20, 40 ]
lists = [10,20,30,40,50]
tem_list = lists

for i in tem_list:
lists.remove(i)

print(lists)

元组:tuple: nums = (10,20,30,40,50) #必须是个集合
nums = (10) # 不是元组
nums = (10,) # 是元祖

元组不能更改里面的元素,要改,先转换为列表,改完在转换回元组

查看元素是否在元组里:if 元素 in 元组:

统计元素重复的个数:元组.count(元素)

元组中有多少个元素:len(元组)

组包:元组=(元素1,元素2,元素3,...)
拆包:变量1,变量2,变量3 ,变量... = 元组 # 数量必须要一样
逗号,空的不算啊,用 len() 查看长度,空的也不算,len()等于多少就使用多少个变量拆包
tuples=(10,20,30,) # 组包
a,b,c = tuples #拆包

字典:dict 字典名 = {键名:键值, 键名:键值}
键名是字符串、数字、元组,都行,通过键名去取值,键名(key)自定义,通过
键名去索引

查:字典 [键名]

增:dicts["age"] = 30 # 没有就是添加
改: dicts["age"] = 18 # 有就是修改
删: 字典名.pop(键名) # 括号啥也不打就报错
字典名.clear()
遍历: 得到键: for 变量 in 字典:或 for 变量 in 字典.keys():
dicts={"names":"宝宝","edu":"本科","marry":True,18:30}
for i in dicts:
print(i)

       得到键值:for 变量 in 字典.values():

dicts={"names":"宝宝","edu":"本科","marry":True,18:30}
for j in dicts.values():
print(j)

       得到键值对: for 变量 in 字典.items()  会自动组包  

dicts={"names":"宝宝","edu":"本科","marry":True,18:30}
for k in dicts.items():
print(k)

       得到值:   for 变量1,变量2 in 字典.items()  会自动解包 

dicts={"names":"宝宝","edu":"本科","marry":True,18:30}
for m,n in dicts.items():
print(m,n)

字符串:
单引号、双引号、三引号
strs = "hello 'python' "
strs = 'hello "python" '
strs = "hello \"python\" "
遍历

判断:strs.isdecimal() 判断是否都是数字,是返回True
负数不算?
strs = "-10123124"
print(strs.isdecimal())

查找:字符串.find("字符") 从左向右,找到后返回下标,找不到返回-1

       字符串.rfind("字符")  从右向左,找到后返回下标,找不到返回-1    

        字符串.index("字符")    从左向右,找到后返回下标,找不到报错

        字符串.rindex("字符")   从右向左,找到后返回下标, 找不到报错

替换:新的字符串变量 = 字符串.replace("被替换的字符串" , "替换后的字符串", 替换的次数)
必须要有个新字符串变量接收;替换的次数不写,默认都替换

分割:字符串.split( "切割符" ) 切割完后,切割符变逗号,字符串被分开

去掉空白:字符串.strip() 去掉开头和结尾的空白,中间的去不掉 lstrip()去左侧,rstrip()去右侧

切片:字符串[ 索引1 : 索引2: 步长 ] 前闭后开,索引2为始终为开,截取一部分;如果是从0开始,索引 1的0可以省略;如果到末尾,索引2的数值可以省略 ; 还可以索引1 和索引2 都省略;步长值不写,默认1;如果要倒过来(逆序),步长值为负
如果步长为正,索引1是起始,索引2是结束,如果步长为负,索引2是起始,索引1是结束

strs = "abcdefg"
print("first\t",strs[0:4])
print("second\t",strs[:4])
print("third\t",strs[4:])
print("fotrh\t",strs[:4:-1])
print("fifth\t",strs[4::-1])
print("sixth\t",strs[4:0:-1])
print("seventh\t",strs[-1:-8:-1])

利用切片把 123.txt 变成 123-副本.txt
strs = "123.txt"
index = strs.rfind(".")
new_strs = strs[0:index] + "-副本" + strs[index:]
print(new_strs)

相关内容

热门资讯

内塔尼亚胡称只要其在任以军就不... △内塔尼亚胡(资料图)当地时间24日,以色列总理内塔尼亚胡在以色列地方政府联合会上发表讲话,谈及以军...
瑞士谈判核心诉求为何?议长会否... 美伊瑞士谈判刚刚结束,双方对谅解备忘录各执一词。我在伊朗外交部新闻发布会现场提问:从瑞士谈判到阿曼磋...
鲁比奥:美伊本月底将继续技术磋... △鲁比奥(资料图)24日多方消息显示,美国国务卿鲁比奥表示,美国和伊朗技术团队将于6月底在瑞士继续举...
芯联集成200亿项目落地:12... 快科技6月24日消息,芯联集成近日发布对外投资进展公告,公司与芯联先进集成电路制造(绍兴)有限公司(...
刷新海洋机器人融资纪录后,他以... 来源:滚动播报 (来源:上观新闻) 依托长三角科创产业沃土,国内海洋智能装备赛道跑出新锐力量。今天...
2026年省管企业“科技创新与... 为进一步提升国资国企科技创新管理水平,推动企业规范开展科技创新活动,强化实践运用能力,切实以高质量创...
智平方郭彦东:机器人大脑不应只... “下一代机器人大脑不应只是算力和数据的竞赛。” 6月23日,具身智能机器人公司智平方创始人兼CEO郭...
在上海图书馆,翻开5G-A与一... 今年以来,我们能切身感受到AI正在全面加速,融入身边的工作与生活。全面养虾、AI视频席卷网络、一人公...
原创 诺... 最近科技圈的热闹,一半是苹果折叠屏的消息闹的,另一半,则是那个几乎被我们遗忘的名字——诺基亚。就在大...
苹果首款折叠iPhone屏幕供... 来源:环球网 【环球网科技综合报道】6月24日消息,据Wccftech报道,市场供应链相关信息显示,...