【Python学习】2021-12-27 - Python基础---可变字符串、位操作、列表、元组、复制、序列、切片、zip

  1. 可变字符串
    在Python中,字符串属于不可变得对象,不支持原地修改,如果需要修改其中的值,智能创建新的字符串对象。但是,经常我们确实需要原地修改字符串,可以使用io.StringIO对象或array模块

字符串修改频繁的时候可以使用

sio = oi.StringIO("字符串") #这是新生的一个独享
sio.getValue()
sio.seek() #指针移动到某个字符
sio.write() #修改该位置的字符
  1. 位操作
a =3
a<<2 #左移1位相当于乘以2 左移2位,相当于乘以4 相当于0B11变成了0b1100
a=8
a>>1 #右移1位相当于除以2. 相当于0b1000变成了0b100
  1. 列表、元组合并复制
[10,20,30]+[5,10,10]   #合并成[1,20,30,5,10,100]
[10,20,30] *3 #复制三次,变为[10,20,30,10,20,30,10,20,30]
  1. 赋值运算符总结
    在这里插入图片描述
  2. 运算符优先级
    从高到低
    从高到低如上
    记住以下规则:1.乘除优先加减 2.位运算符和算数运算>比较运算符>赋值运算符
  3. 序列
    序列是一种数据存储方式,用来存储一系列的数据。在内存中,序列就是一块用来存放多个值的连续的内存空间。
    序列中存储的是对象的地址,而不是对象的值。
    Python中常用的序列结构有:字符串、列表、元组、字典、集合
    列表:用于存储任何数目、任意类型的数据集合
    列表对象的常用方法汇总如下:在这里插入图片描述
    请添加图片描述
    在这里插入图片描述
    列表的大小可变,根据需要随时增加或缩小

创建方法:
1、基本语法[]创建
2、list()创建
3、range()创建整数列表
range([start,] end [,step])
start:可选,表示起始数,默认0
end:必须按,表示结尾数字
step:可选,表示步长,默认为1
python3中range()返回的是一个range对象,而不是列表。我们需要通过list()方法将其转换成列表对象。
4、推导式生成列表

  1. 切片操作
    典型操作:
    在这里插入图片描述
    其他操作:
    在这里插入图片描述

  2. 列表排序
    a.sort() #默认是升序排列
    a.sort(reverse=True) #降序排列
    random.shuffle() #打乱顺序
    sorted()进行排序,返回新列表,不对原列表做修改
    reversed() 与sorted同理 但是reversed()是迭代器 只能使用一次

  3. 元组
    列表属于可变序列,元组属于不可变序列,不能修改元组中的元素
    通过()创建元组
    或者 a=(10,20,30) 等价于 a=10,20,30
    b=(20)的type是int 创建元组应该是b=(20,)
    同理 b=20是int b=20,是元组
    也可以用tuple()创建元组,也可以将其他类型的转成元组
    同理 list()也可以
    内置sorted()对元组进行排序生成新的列表对象
    元组的访问和处理速度比列表快
    与整数和字符串一样,元组可以作为字典的键,列表则永远不能作为字典的键使用

  4. zip
    zip()将多个列表对应位置的元素组合成为元组,并返回这个zip对象

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值