元组
元组是不可变的
元组可以不带括号
a = 1,2,3,4,5
也可以通过下标获取元素
a[0]
a[-1]
元组可以切片
切片:将目标对象中的元素以某种特定的组合导出
生成一个元素的元组
a = (1,)
打包和解包
打包
a = (1,'a',3.14)
解包
a,b,c = (1,2,3)
列表和字符串也可以这样
注:赋值号左边的变量名数量必须跟右侧序列的元素数量一致
小技巧:
a,b,*c = "abcde"
python的多重赋值实现就是
先通过元组打包
再将元组进行解包
字符串
字符串本质是序列,像元组一样不可变的序列
判断一个字符串是不是回文数
"是" if x == x[::-1] else "不是"
大小写字母转换
# 字符串首字母变大写,其他变小写
x.capitalize()
# 转小写(支持其他语言的字符)
x.casefold()
# 每个单词的首字母变大写,该单词所有其他字母变小写
x.title()
# 大小写翻转
x.swapcase()
# 转大写
x.upper()
# 转小写(只能处理英文字母)
x.lower()
左中右对齐
# 如果x的字符串小于 15,则左右用空格填充
x.center(15)
# 用多余的空格左填充
x.ljust(15)
# 用多余的空格右填充
x.rjust(15)
# 用0填充左侧
x.zfill(15)
查找
#查找a在x中出现的次数
x.count('a')
# 从左往右找第一个出现的下标
# 找不到返回-1
x.find('a')
# 从右往左找第一个出现的下标
x.rfind('a')
# 会抛异常
x.index()
# 会抛异常
x.rindex()
替换
# 将字符串中的tab全部替换成空格,下面表示用4个空格替换
x.expandtabs(4)
# 将x的a全部替换为b
x.replace('a','b')
# 以表格的规则进行替换字符串,还有第三个参数表示将指定字符串忽略
table = str.maketrans('ABCDEFG','1234567')
"I Love You".translate(table)
判断
# x的第一个元素是不是a
# 可以传多个值
x.startswith('a')
# x的最后一个元素是不是a
# 可以传多个值
x.endswith('a')
# x中的单词是否都以大写字母开头
x.istitle()
# x的字母是否全是大写
x.isupper()
# x的字母是否全是小写
x.lower()
# x是否全是字母
x.isalpha()
#x是否为一个空白字符串
x.isspace()
# x所有字符是否都是可打印的(\n是不可打印字符)
x.isprintable()
# 1,2,3,4...
x.isdecimal()
# 1,2,2²
x.isdigit()
# 1,2,2²,一,II
x.isnumeric()
# isalpha/isdecimal/isdigit/isnumeric
x.isalnum()
#x是否是一个合法的Python标识符
x.isidentifier()
# 判断是不是python的保留字符
import keyword
keyword.iskeyword('if')
截取
# 左侧不用留白
# 第一个参数选填,填了之后会移除左侧传入的字符
x.lstrip()
# 右侧不用留白
x.rstrip()
# 左右不用留白
x.strip()
# 剔除一个具体的子字符串前缀
x.remoteprefix(prefix)
# 剔除一个具体的子字符串后缀
x.removesuffix(suffix)
拆分&拼接
# 将字符串以参数指定的分隔符为依据进行切割,并且将切割后的结果返回一个三元组
# 从左到右找分隔符,拆成三份
x.partition(sep)
# 从右往左找分隔符,拆成三份
x.rpartition(sep)
# 根据,拆分字符串,第二个参数是拆几份
x.split(',')
# 以换行进行分割,返回一个列表,第二个参数表示返回的结果包不包含换行符
x.splitlines()
# 参数是可迭代对象
# 输出:a.b.c
‘.’.join(['a','b','c'])
# join的拼接比用+效率快
‘’.join('a','b')
格式化字符串
可以看菜鸟学院更详细,数字格式化内容太多了
https://www.runoob.com/python/att-string-format.html
# 基础用法
"{}{}{}".format(1+2,2*2,3*3)
# 位置索引
"{1}{0}".format('a','b')
# 关键字索引
"{name}{fav}".format(name="a",fav="b")
"{1:>10}{0:<10}".format(520,250)
#输出: 250520
#f字符串,{}里面可以直接放变量或表达式
f"{1+2}{2*2}"
网友评论