可变和不可变

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

按照存值个数划分

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

数字类型

字符串

列表

字典

不可变类型

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

day 08 预科的更多相关文章

  1. day 08作业 预科

    有如下值集合 [11,22,33,44,55,66,77,88,99,90...],将所有大于 66 的值保存至字典的第一个key中,将小于 66 的值保存至第二个key的值中 lt=[11,22,3 ...

  2. iOS系列 基础篇 08 文本与键盘

    iOS系列 基础篇 08 文本与键盘 目录: 1. 扯扯犊子 2. TextField 3. TextView 4. 键盘的打开和关闭 5. 打开/关闭键盘的通知 6. 键盘的种类 7. 最后再扯两句 ...

  3. javaEE基础08

    javaEE基础08 一.继承 特点:继承父类的属性和方法,单继承(多继承) 特性:方法的复写(重写) 比如:人可以养狗 人------>狗:整体和部分(拥有)关系 关键字:extends 结构 ...

  4. 【玩转单片机系列001】 08接口双色LED显示屏驱动方式探索

    前些日子,从淘宝上购得一块08接口的双色LED显示屏(打算做个音乐频谱显示器),捣鼓了好几天,终于搞清楚了其控制原理,在这里做个总结,算是备忘吧. 1.LED显示屏的扫描方式 LED显示屏的扫描方式有 ...

  5. 《HelloGitHub月刊》第08期

    <HelloGitHub>第08期 兴趣是最好的老师,<HelloGitHub>就是帮你找到兴趣! 简介 最开始我只是想把自己在浏览GitHub过程中,发现的有意思.高质量.容 ...

  6. Spring Security(08)——intercept-url配置

    http://elim.iteye.com/blog/2161056 Spring Security(08)--intercept-url配置 博客分类: spring Security Spring ...

  7. [DFNews] EnCase v7.08发布

    EnCase v7.08 近日正式发布,7.08增加了Evidence Processor Manager以及Evidence Processor,不仅可以在本地实现证据处理队列,也支持了通过网络进行 ...

  8. 【博客美化】08.添加"扩大/缩小浏览区域大小" 按钮

    博客园美化相关文章目录: [博客美化]01.推荐和反对炫酷样式 [博客美化]02.公告栏显示个性化时间 [博客美化]03.分享按钮 [博客美化]04.自定义地址栏logo [博客美化]05.添加Git ...

  9. JavaScript学习08 Cookie对象

    JavaScript学习08 Cookie对象 JavaScript Cookie Cookie对象: Cookie是一种以文件的形式保存在客户端硬盘的Cookies文件夹中的用户数据信息(Cooki ...

随机推荐

  1. Java学习-059-Jsoup爬虫获取中国所有的三级行政区划数据(四),生成相应的 JSON 数据并输出

    还是直接上马,对应的源码如下所示: 生成的三级行政区划部分 JSON 数据如下所示:

  2. LeetCode 112. Path Sum(路径和是否可为sum)

    Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all ...

  3. LeetCode 110. Balanced Binary Tree(判断平衡二叉树)

    Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...

  4. 最好用的Redis Desktop Manager 0.9.3 版本下载

    因为Redis Desktop Manager作者在 0.9.4 版本之后选择对所有的安装包收费,不再提供安装包下载,但是源码依旧公开. github 上有 redis destop manager ...

  5. rocketmqy压测消费端解决源码中不能正常消费的问题

    因为近期在做rocketmq的性能压测,然后看到一些文章,提到用rocketmq中的自带的benchamark工具进行压测,因为我们公司是自己在做了一个二次封装,做了一层认证,所以工具还需要在改造,所 ...

  6. kubernetes之kube-proxy运行机制分析

    在kubernetes集群的每个node都会运行一个kube-proxy服务进程,这个进程可用看作Service的透明代理兼负载均衡器.其核心功能是将到某个Service的访问请求转发到后端的多个po ...

  7. SQL Server表分区(转)

    什么是表分区 一般情况下,我们建立数据库表时,表数据都存放在一个文件里. 但是如果是分区表的话,表数据就会按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在 ...

  8. 在ensp上的动态NAT的配置

    原理 实验模拟 搭建实验拓扑 相关参数 配置静态NAT ,一对一映射 首先设置静态路由,使路由器能够访问 我们ping一下抓一下包 发现我们出去的包已经封装成为了另外一个ip 配置动态NAT ,一对一 ...

  9. 在linux上安装redis

    下载Redis安装包 wget  http://download.redis.io/releases/redis-3.2.9.tar.gz 解压Redis安装包 tar -zxvf redis-3.2 ...

  10. 二叉树根结点到任意结点的路径(C语言)

    有一棵二叉树,如下图所示: 其中 # 表示空结点. 先序遍历:A B D E G C F 问题:怎么得到从根结点到任意结点的路径呢? 示例:输入 G,怎么得到从结点 A 到结点 G 的路径呢? 很明显 ...