day 08 预科
2024-08-31 11:55:53
可变和不可变
可变和不可变是针对数据类型而言的
按照存值个数划分
存一个值(数字类型/字符串)/存多个值(列表/字典)
数字类型
字符串
列表
字典
不可变类型
x=10 # 定义变量就好开辟一块新的内存空间存放变量
print(id(x)) # 1651339008
x=x+1 # x=11
print(id(x)) # 1651339040
可变类型
lt=[1]
print=(id(lt)) # 2493475841480
lt.append(2)
print(lt)
print(id(lt)) # 2493475841480
dic={'a':6} # 2740179328528
print(id(dic))
dic.update({'b'}:6)
print(id(dic)) # 2740179328528
可变: 列表/字典 ----》值变id不变
不可变: 数字/字符串 ----》值变id也变
列表的内置方法
# 列表的内置方法只能给列表用
lt=[1,2,3]
# 1.索引取值/索引修改值
lt[0]=2
print(lt)
# 2.索引切片
print(lt[0:1])
# 3.成员运算 in/not in
print(2 in lt)
print(2 not in lt) # 返回ture----》返回Ture
# 4.for循环
for i in lt:
print(i)
# 5.长度len
print(len(lt))
# 6.append(): 追加值
print(len(lt))
# 不要去理解为什么,先死记,涉及下周讲的函数的返回值
s='tank sb'
s=s.replace('sb','dsb')
print(s)
lt.append(4)
print(lt)
# 7.sort(): 排序
lt=[2,3,1]
lt.sort()
print(lt)
lt=['pa','bcnzhuren','asdf','sdfffffffffffff'] # 按照首字母的拼音顺序
lt.sort() # i相当于列表里的每一个元素
# lt.sort(key=lambda i:i[1]) # i相当于列表中的每一个元素
print(lt)
# 8.reverse(): 反转
lt=[1,2,3]
lt.reverse()
print(lt)
# 9.index(): 获取元素索引
print(lt.index(2))
# 10.clear(): 清空列表
lt.clear()
print(lt)
# 11.copy(): 复制
lt=[1,2,3]
lt1=lt.copy()
print(lt1)
# 12.extend(): 扩展列表
lt1=[1,2,3]
lt2=[1,5,6]
lt1.extend(lt2) # 只能加列表
print(lt1)
# 13.remove(): 移除
lt=[1,2,3]
lt.remove(3)
print(lt)
# 14.insert():按照索引插入值
lt=[1,2,3]
lt.insert(0,1.5) # 在前面插入 0表示索引,1.5为插入的值
print(lt)
字典的内置方法
# 字典的内置方法:字典自己使用
banzhuren_info_dic = {'name': 'guolaoshi', 'height': 150, 'weight': 130,
'hobby_list': ['jiao', 'tiao', 'music']}
# 1. 按key取值/按key修改值/按key增加值
print(banzhuren_info_dic['height'])
banzhuren_info_dic['height'] = banzhuren_info_dic['height'] + 1
print(banzhuren_info_dic['height'])
banzhuren_info_dic['age'] = 30
print(banzhuren_info_dic)
# 2. 成员运算(比较的是key)
print('age' in banzhuren_info_dic) # key里没有18
# 3. for循环(对key循环)
for i in banzhuren_info_dic:
print(i)
# 4. keys()/values()/items() --> 当作列表
print(banzhuren_info_dic.keys()) # 所有的key
print(banzhuren_info_dic.values()) # 所有的值
print(banzhuren_info_dic.items()) # 所有的键值对(以列表存储)
for i in banzhuren_info_dic.items():
print(i[0] + '*****' + str(i[1]))
# 5. get(): 取值
# print(banzhuren_info_dic['height1'])
print(banzhuren_info_dic.get('height', 150)) # 找到了就找了;没有值返回None,如果给定了150,没有找到就150
# # 购物车没有的话为1,有的话加1
# shopping_car = {}
#
# if shopping_car.get('wawa'): # none
# shopping_car['wawa'] = shopping_car['wawa'] + 1
# else:
# shopping_car['wawa'] = 1
# print(shopping_car)
# # 6. update(): 扩展字典
# dic1 = {'a':1}
# dic2 = {'b':2}
# dic1.update(dic2)
# print(dic1)
# 7. setdefault(): 有则不更改,没有则增加
dic1 = {'a': 1}
dic1.setdefault('a', 2)
print(dic1)
# 能够刷leetcode的时候想到
dic1.update()
# 考察一个人平常在干什么-->每天在敲代码--》快捷键使用的熟练度
# file edit view navigate code refactor run tools vsc window help
print('zieniubi,woduoniubi')
最新文章
- 关于打印机能PING通但是无法打开\\地址的问题
- Rank() 、DENSE_RANK()、NTILE(n)的用法-转
- Python 2.7_pandas连接MySQL数据处理_20161229
- jquery对javascript事件的封装一览
- 【故障处理】CRS-1153错误处理
- HDU 1003 Max Sum --- 经典DP
- Minimax Triangulation
- jqgrid在页面出来竖型滚动条自动调整列宽
- Js解析json
- linux之umask函数解析
- C语言一维指针的深入理解
- 初识_IOS-简易计算器-问题总结
- [tarjan] hdu 3836 Equivalent Sets
- Visual Studio 2017创建.net standard类库编译出错原因
- 【2017集美大学1412软工实践_助教博客】团队作业8——第二次项目冲刺(Beta阶段)
- win10 UWP 剪贴板 Clipboard
- DUBBO报错分析—1(连接zookeeper成功,调用方法无反应,不报错)
- API测试工具SoapUI &; Postman对比分析
- python-markdown
- Python字符串拼接的6种方法(转)
热门文章
- SpringBoot 上下文获取注入的Bean
- MySQL Shared and Exclusive Locks
- github 被强了!太丧心病狂了!
- delphi uniDac
- Windows SVN迁移到Linux 服务器
- FFmpeg在VS2017下的编译
- nvarchar, varchar, nchar, char的差別
- RTSP Spectification
- C# .net 提升 asp.net mvc, asp.net core mvc 并发量
- 【MongoDB学习之五】Java中使用MongoDB