可变和不可变

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

按照存值个数划分

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

数字类型

字符串

列表

字典

不可变类型

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判断是excel2003还是2007以上

    public static Workbook create(InputStream in) throws IOException,InvalidFormatException { if (!in.ma ...

  2. Linux shell字符串操作

    #!/bin/bash #镜像名 image="asr-server" #镜像版本 ver="5.2.1" #容器名 dname="asr" ...

  3. Python 使用 paho-mqtt

    https://blog.csdn.net/weixin_41656968/article/details/80848542 https://blog.csdn.net/lhh08hasee/arti ...

  4. k8s记录-k8s基本概念和术语

    每次个节点上当然都要运行Docker.Docker来负责所有具体的映像下载和容器运行. Kubernetes主要由以下几个核心组件组成: etcd保存了整个集群的状态: apiserver提供了资源操 ...

  5. Egret HTML5游戏开发指南

    Egret  HTML5游戏开发指南 下载地址:https://pan.baidu.com/s/1fuxllvmRhWXoWDwH4gxN9g 关注微信公众号获取提取码: 输入:egrt 获取提取码

  6. 使用 Alibaba 的 Homebrew 镜像源进行加速

    使用 Alibaba 的 Homebrew 镜像源进行加速 平时我们执行 brew 命令安装软件的时候,跟以下 3 个仓库地址有关: brew.git homebrew-core.git homebr ...

  7. traefik安装

    注意这篇文档有个错误,需要改正一下: 1.nginx1-7.yaml nginx1-8.yaml traefik.yaml 这三个文件里面的80端口需要改成8080端口,否则报错,其他的文件不变. 2 ...

  8. ifcopenshell在VS2015下的编译

    源起 今天使用 IfcOpenShell的IfcConvert ,因为是开源的所以就想自己编译下,编译过程中遇到不少问题,因此记录下来 什么是IfcOpenShell? IfcOpenShell是一个 ...

  9. (CSDN迁移)JAVA多线程实现-单线程化线程池newSingleThreadExecutor

    JAVA通过Executors提供了四种线程池,单线程化线程池(newSingleThreadExecutor).可控最大并发数线程池(newFixedThreadPool).可回收缓存线程池(new ...

  10. 使用Python的turtle画小绵羊

    今天学习使用turtle画图,本来想实现个3D效果,结果2D都画了半天,画圆被绕晕了 目标图片: 实现代码: # -*- coding:utf-8 -*- # __author__ :kusy # _ ...