可变和不可变

可变和不可变是针对数据类型而言的

按照存值个数划分

存一个值(数字类型/字符串)/存多个值(列表/字典)

数字类型

字符串

列表

字典

不可变类型

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')

最新文章

  1. 关于打印机能PING通但是无法打开\\地址的问题
  2. Rank() 、DENSE_RANK()、NTILE(n)的用法-转
  3. Python 2.7_pandas连接MySQL数据处理_20161229
  4. jquery对javascript事件的封装一览
  5. 【故障处理】CRS-1153错误处理
  6. HDU 1003 Max Sum --- 经典DP
  7. Minimax Triangulation
  8. jqgrid在页面出来竖型滚动条自动调整列宽
  9. Js解析json
  10. linux之umask函数解析
  11. C语言一维指针的深入理解
  12. 初识_IOS-简易计算器-问题总结
  13. [tarjan] hdu 3836 Equivalent Sets
  14. Visual Studio 2017创建.net standard类库编译出错原因
  15. 【2017集美大学1412软工实践_助教博客】团队作业8——第二次项目冲刺(Beta阶段)
  16. win10 UWP 剪贴板 Clipboard
  17. DUBBO报错分析—1(连接zookeeper成功,调用方法无反应,不报错)
  18. API测试工具SoapUI & Postman对比分析
  19. python-markdown
  20. Python字符串拼接的6种方法(转)

热门文章

  1. SpringBoot 上下文获取注入的Bean
  2. MySQL Shared and Exclusive Locks
  3. github 被强了!太丧心病狂了!
  4. delphi uniDac
  5. Windows SVN迁移到Linux 服务器
  6. FFmpeg在VS2017下的编译
  7. nvarchar, varchar, nchar, char的差別
  8. RTSP Spectification
  9. C# .net 提升 asp.net mvc, asp.net core mvc 并发量
  10. 【MongoDB学习之五】Java中使用MongoDB