本文中主要是对Python中的常用对象及操作进行总结,包含对象有:字符串str:‘ ’、“”、‘‘’ ‘’’即单引号,双引号,三引号表示,不可变的
列表list,用[ ]表示,可变的
元组tuple,用()表示,不可变的
字典dictionary :用{key:value}键值对表示,可变的
集合set:set()创建或者{对象1,对象2,对象3...... }创建
字符串str
基础字符串是Python中的一种对象类型,用str表示,单引号、双引号或者三引号括起来,其中三引号多用于函数的注释。变量无类型,对象有类型
python用\作为转义字符
str()函数将整数型对象转化为字符串对象
input()函数输入的返回结果是字符串
原始字符串:r'内容',用r和引号括起来的就是原始字符串
关于转义符号见下表:
转义字符作用
\在行尾时表示:一行未完,接下行
\反斜杠符号(行中间)
\'单引号
\b退格
\000空
\n换行
\v纵向制表符
\t横向制表符
\r回车
\f换页
\oyy八进制
\xyy十六进制
基本操作len():求长度
+:连接两个字符串
*:重复字符串,用于复制
in:判断是否在字符串中
max()、min():求最大或最小值
格式化输出:包含%s和format()函数,前者少用,后者常用
format(*args, **kwargs)
常用方法isalpha():判断是否全部是字母
split():返回结果是列表list,如果加上了括号必须指定一个分隔符split(" "):空格作为分隔符,得到列表list.
split(":"):冒号作为分隔符
split():不指定的话,默认空格作为分隔符
strip():去掉字符串左右的空格,原来的对象不变,生成新的对象lstrip():去掉左边的空格
rstrip():去掉右边的空格
大小写转换:原来的对象不变,生成新的对象upper():全部转换为大写
lower():全部转换为小写
capitalize():首字母转换为大写
isupper():判断字母是否全部是大写
islower():判断是否全部是小写
istitle():判断是否是标题模式,即字符串中的单词的首字母是大写,其他都是小写
title():转换成title模式,即首字母大写,其余全部小写
join():用于拼接字符串,是字符串的方法

image.png

image.png

image.png
列表在Python中列表用[ ]来表示,括号里面可以是任意的对象,甚至是布尔值,也可以是多种不同的对象,列表是可变的。
看个题目:将[[1,2,3], [4,5,6,], [2,2,2]]变成[[1,4,9], [16,25,36], [4,4,4]]

image.png
操作列表索引和切片索引编号左边从0开始,右边从-1开始;
index()函数查看对象元素的索引
[start:end:step],如果不指定步长默认为1
反转:生成新的值,原来的不变[::-1]:通过切片反转
reversed()函数反转,返回可迭代对象,使用list函数转化为列表展示
操作列表len():求长度
+:连接
*:重复性操作,复制功能
in:判断是否在列表中
max\min:求最值
修改列表通过索引直接修改:list[0] = new
append():末尾追加元素
a[len(a):] = [x]:类似append()功能

image.png

image.png

image.png
常用列表函数append():在最右边追加元素;没有返回值
extend():将两个列表合并成一个;参数必须是可迭代的对象;没有返回值; list.extend(L) = list[len(list):] = L

image.pngcount():统计元素在列表中出现的次数;若元素不存在,不报错返回值是0
index(x):x是列表中的一个元素,函数查看索引编号,只能检索到元素在列表中第一次出现的位置
insert(i,x):指定位置插入元素,将元素x插入到索引是i的前面,必须是两个参数,原地修改,没有返回值
索引值超过列表的最大值,就直接在后面进行追加一个元素。

image.png

image.png
删除问题remove(x):删除列表中第一次出现的x元素,没有x则报错
pop([i]):括号内的参数是可选的。不写,默认删除最后一个,并且将删除的值作为返回值;写上参数,删除指定索引的元素,并且将该值作为返回值。
注意:remove的参数是元素,pop的参数值索引

image.png

image.png
关于反转问题list.reverse():将列表的元素反转过来,实现反转功能,类似[::-1];原地反转,没有返回值,,不能用于反向迭代
reversed(list):能够用于反向迭代

image.png

image.png
关于排序问题list.sort(key=None,reverse=True):原地修改,没有返回值,默认是从小到大排序,升序
sorted(list):参数是列表,类比reversed的用法

image.png
字符串和列表比较
相同都是序列类型
索引左边从0开始,右边从-1开始
都可以用于切片等操作获取多个元素
不同列表是可变的,字符串是不可变
字符串中的元素只能是字符,列表中的元素是任意类型的数据
字符串和列表转化
字符串和列表的转化通常使用str.split()和“seq”.join(list),两者可以说是互逆运算:split():根据分隔符将字符串转成列表,str---->list
括号内可以指明分隔符和最大索引值,split(“+”,2):以+为分隔符,最大索引值为2,共3个元素
join():字符串的方法
split()的逆运算
传入join的对象必须是统一的,比如列表中同时存在数字和字符串则不能用join

image.png

image.png
元组tuple
元组特点元组tuple用圆括号()括起来
元组中的对象是任意的Python对象
元组中的元素不能更改;如果想修改,可以先转成列表,修改列表中的元素,再转回元组。
元组是序列,存在索引和切片
list()和tuple():实现元组和列表之间的转换
重点:元组中只有一个元素时,最后必须带上英文逗号

image.png

image.png
元组用途元组比列表操作速度快:当需要进行遍历操作,使用元组更好
对不需要修改的数据进行“写保护”,使用元组;修改的时候转成列表
元组能够用于字典中的key,因为元组是不可变的
字典
字典dictionary是Python常用的一种数据类型,由键值对key-value组成。键是唯一的,不能重复;值是可变,也可重复。键值对之间用:隔开。
字典可以原地修改,是可变的
键是不可变类型(tuple),值是任意的类型(list)
创建空字典大有用处:dict1 = { }
直接创建:dict2 = {"name: "Peter", "lang": "python"}
通过元组构建字典:dict3 = dict((["name", "Peter"], ["lang", "python"]))
使用fromkeys:dict4 = {}.fromkeys(("second", "forth"), "python")
基本操作len():返回键值对的数量
d[key]:返回字典中的键key
d[key]=value:将value赋给字典中的键key
del d[key]:删除某个值或者说键值对
字典方法dict.copy():复制,注意深浅拷贝,总结一句话:浅拷贝只复制最外层,深拷贝复制所有可变的数据类型,请参考深入理解赋值深浅拷贝
dict.clear():清空,变成空字典
dict.get(k[,d]):获取某个键中的值,如果键不存在,返回的是None
dict.setdefault(k[,d]):获取某个键中的值,如果键不存在,将参数中的键值对添加到字典中,与get的不同之处

image.png

image.pngitems:同时获取k-v的值
keys:获取key键值
values:获取值value