立习习学python——第三天

可变字符串

Python原本是不支持修改字符串的,为了使用方便,可以使用io.String()对象或arrary模块。

# 将字符串中第七个字符改为“a”
import io
s="hello,yixia"
sio=io.StringIO(s)
sio.seek(7)
sio.write("a")
sio.getvalue()

运算符

运算符说明
and, or, not布尔与,布尔或,布尔非
is, is not同一性判断,判断是否为同一个对象
<, <=, >, >=, !=, ==比较值是否相等,可以连用
|, ^, &按位或,按位异或,按位与
<<, >>移位
~按位翻转
+, -, *, /, //, %加,减,乘,除,浮点除,整数除,取余
**幂运算

小细节

  1. 加法操作
  • 数字相加
3+2
  • 字符串拼接
"3"+"2"
  • 列表、元组等合并
[1,2,3]+[3,4,5]
  1. 乘法操作
  • 数字相乘
3*2
  • 字符串复制
"wyx"*3
  • 列表、元组等复制
[1,2,3]*3
  1. 运算符优先级
    使用小括号组织即可。

序列

序列是一种数据存储方式,用来存储一系列数据。
Python中常用序列结构有:字符串、列表、元组、字典、集合

列表

列表用于存储任意数目、任意类型的数据集合。列表中的元素可以各不相同,可以是任意类型。

列表对象的常用方法

方法要点描述
list.append(x)增加元素将元素x增加到列表list尾部
list.extend(aList)增加元素将列表aList所有元素加到列表list尾部
list.insert(index,x)增加元素将列表指定位置index处插入元素x
list.removr(x)删除元素将列表list中删除首次出现的指定元素x
list.pop([index])删除元素删除并返回列表list指定为止index处的元素,默认是最后一个元素
list.clear()删除所有元素删除列表所有元素,并不是删除列表对象
list.index(x)访问元素返回第一个x的索引位置,若不存在x元素抛出异常
list.count(x)计数返回指定元素x在列表list中出现的次数
len(list)列表长度返回列表中包含元素的个数
list.reverse()翻转列表所有元素原地翻转
list.sort()排序所有元素原地排序
list.copy()浅拷贝返回列表对象的浅拷贝

列表的创建

  1. 基本语法创建
a=[1,1,4,3,"xjp"]
  1. list()创建
    使用list()可以将任何可迭代的数据转化为列表。
>>> a=list()  #创建一个空的列表对象
>>> a=list(range(10))
>>> a
[0,1,2,3,4,5,6,7,8,9]
>>> a=list("wyx")
>>> a
["w","y","x"]
  1. range()创建整数列表
    语法格式为:range([start,] end [,step])
    start参数:可选,表示起始数字。默认为0。
    end参数:必选,表示结尾数字。
    step参数:可选,表示步长。默认为1。

  2. 推导生成列表
    在控制语句中常用。

列表元素的增加和删除

  1. 元素的五种添加方式
  • append()
    原地修改列表对象,尾部添加元素,推荐使用。
  • “+”运算符操作
    并非真正的在尾部添加元素,而是创建新的列表对象。也就是说,地址发生了变化。
  • extend()
    将目标列表的所有元素添加到本列表的尾部,属于原地操作,不创建新的列表对象。
  • insert() 插入元素
    将指定元素插入到列表对象的任意指定位置。
>>> a=[1,2,3]
>>> a.insert(2,40)
>>> a
[1,2,40,3]
  • 乘法扩展
    直接上代码。
>>> a=['a',2]
>>> b=a*3
>>> b
['a',2,'a',2,'a',2]
  1. 元素删除的三种方式
  • del
    删除列表指定位置的元素,实质是在进行拷贝。
>>> a=[1,2,3]
>>> del a[1]
>>> a
[1,3]
  • pop()
    删除并返回指定位置元素。默认为操作列表最后一个元素。
>>> a=[1,2,3,5,6]
>>> b=a.pop()
>>> b
6
>>> c=a.pop(2)
>>> c
3
  • remove()
    删除首次出现的指定元素,若不存在该元素抛出异常。

列表元素访问和计数

  1. 通过索引直接访问元素
    和字符串访问一样。注意范文:[0,列表长度-1]。超出范围则抛出异常。
  2. index()获得指定元素在列表中首次出现的索引
    语法是:index(value,[start,[end]])
  3. count()获得指定元素在列表中出现的次数
  4. len()返回列表长度
  5. 成员资格判断 in

切片操作slice

语法格式:[起始偏移量start:终止偏移量end[:步长step]]
包头不包尾

列表排序

  1. 修改原列表,不建新列表的排序
  • 升序排列,sort()
  • 降序排列,sort(reverse=True)
>>> a=[2,1,3]
>>> a.sort()
>>> a
[1,2,3]
>>> a.sort(reverse=True)
>>> a
[3,2,1]
  • 打乱顺序
>>> a=[3,4,2,1]
>>> import random
>>> random.shuffle(a)
>>> a
[2,1,4,3]
  1. 建立新的列表排序
  • sorted(a)
  • sorted(a,reverce=True)
  1. reversed() 返回迭代器

列表其他内置函数

  1. max和min
    返回列表中的最大值、最小值
  2. sum
    数值型列表的所有元素进行求和操作,对非数值型列表运算则会报错。

多维列表

  1. 二维列表
    一维列表存储一维、线性的数据。
    二位列表存储二维、表格的数据。

元组

列表属于可变序列,可以任意修改列表中的元素。元组属于不可变序列,不能修改元组中的元素。因此,元组没有增加元素、修改元素、删除元素相关的方法。
因此,只需要学习元组的创建和删除,元组中元素的访问和计数即可。

元组的创建

  1. 通过()创建元组。小括号可以省略。如果元组只有一个元素,则必须后面加逗号。否则会认为是整数。
  2. 通过tuple()创建元组
    语法格式:tuple(可迭代的对象)
b=tuple()         #创建一个空元组对象
b=tuple("abc")    #将字符串转化为元组
b=tuple(range(4)) #将range转化为元组
b=tuple([1,2,3])  #将list转化为元组

总 结
tuple()可以接受列表、字符串、其他序列类型、迭代器生成元组。
list()可以接受元组、字符串、其他序列类型、迭代器等生成列表。

元组元素的访问和计数

  1. 元组的元素不能修改
  2. 元素的访问
  • 索引访问
  • 切片slice访问
  1. 排序sorted(),并生成新的列表对象。
  2. zip(列表1,列表2,…)

元组总结

  1. 元组的核心特点:不可变序列;
  2. 元组的访问和处理速度比列表快;
  3. 与整数和字符串一样,元组可以作为字典的键,列表则永远不能作为字典的键使用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值