python笔记3

元组

  • 逗号是构成元组的基本条件
  • 元组是不可变的 不能修改对象本身
  • 支持切片 count() index()
  • + *也是可以的
  • 支持嵌套 和列表循环一致
  • 支持列表推导式 不支持元组推导式
  • 一个元素的元组
tu = (4,)
  • 解包 赋值
# 左边序列名变量,必须和右边序列元素数量一致
# 生成一个元组,也可以叫做元组的打包
p = (5, '455', 3.44)
x, y, z = p #也支持列表 也支持字符串
type(x), type(y), type(z)
(int, str, float)
q = "455"
x, *y = p #也支持列表 也支持字符串
type(x), type(y), type(q)
(str, str, str)
  • 如果元组中的元素指向一个可变的列表时候,元组可以变的
s = [1, 2]
t = [3, 3]
w = (s, t)
w[0][0] = 10
([10, 2], [3, 3])

字符串

  • 大小写字母变化
# capitalize() # 首字母变大写,其余变小写
# casefold() # 小写 还能处理其他语言文字
# title() # 每个字母开头变大写,其余变小写
# swapcase() # 大小写翻转
# upper() # 大写
# lower() # 小写 只能处理英文
  • 左中右对齐
# width宽度 fillchar填充的字符,默认空格 
#center(width, fillchar='') #居中
# ljust(width, fillchar='')  #左对齐
# rjust(width, fillchar='') # 右对齐
# zfill(width) # 用0去填充左侧
# width小于或者等于源字符串 没有什么对齐
"-520".zfill(10)
'-000000520'
  • 查找
# count(sub[, start[, end]]) 子字符串在源字符串出现的次数
# find(sub[, start[, end]])从左往右 查找子字符串在源字符的索引值 找不到返回-1
# rfind(sub[, start[, end]])从右往左 查找子字符串在源字符的索引值 找不到就输出-1
#index(sub[, start[, end]]) rindex(sub[, start[, end]])  查找子字符串在源字符的索引值找不到就报错
  • 替换
# expandtabs([tabsize = 8])  替换 tabsize大小
# replace(old, new, count = -1) old要替换的字符串,new替换成什么字符串,count替换次数
# translate(table) str.maketrans("123", "456")# 转换表格
x = "88855554667498765"
x.replace('888', '10000')
'1000055554667498765'
table = str.maketrans("123", "456")# 转换表格
x = "1234444321"
x.translate(table)
'4564444654'
  • 判断和检测
# startswith(prefix[, start[, end]]) 判断子字符串,是否出现在初始位置 
# [ 代表可选参数start索引值
# endswith(prefix[, start[, end]]) 判断子字符串,是否出现在结束位置
# isupper() 是否全部大写
# islower() 是否全部小写
# istitle() 开头是否大写且其余都是小写
# isalpha() 全部由字母构成
# isascii() 如果字符串为空或字符串中的所有字符都是 ASCII
# isspace() 是否空白字符串
# isprintable() 是否可打印 转义字符不是可打印字符
# isdecimel() 是否是十进制
# isdigit() 检测字符串是否只由数字组成
# isnumeric() 数字 罗马数字,阿拉伯数字,
# isalnum() isnumeric()||isdigit()||isdecimel()||isalpha()
# isidentifier() 是否是合法的python标志符 就是变量
  • 截取
# strip(chars = None) 截取空白 chars 需要去除的字符串中的单个字符 
# lstrip(chars = None) 截取左侧空白
# rstrip(chars = None) 截取右侧空白
# removeprefix(prefix) 前缀匹配整个字符串 不是单个字符
# removefuffix(suffix) 后缀
"www.baidu.com".strip("w.c") #匹配其中一个 就踢掉其中一个
'baidu.com'
  • 拆分和拼接
# partition(sep) 分隔符sep 返回3元组 
# rpartition(sep) 从右到左 分隔符sep 返回3元组
# split(sep = None, maxsplit = -1) 切割 变成列表 maxsplit分隔的次数
# splitlines(keeoends = False) 按行分割 列表返回 keeoends是否包含换行符
# join(iterable) 拼接 列表元组都没有问题 数据量越大 比加号有效率
  • 格式化字符串
# format(元组) 
# 默认顺序
"我出生于{},大学在{}读书".format(2000, "66大学")
# 索引
"我出生于{1},大学在{0}读书".format(year, "66大学")
# 关键字
"我出生于{year},大学在{school}读书".format(year = 2000,school = "66大学")
# 输出{}
"{
     {}}".format()
"我出生于{},大学在{}读书".format({
     }, "湘潭大学")
# 其他用法
"{0:^10}{1:>10}".format(55,66)
'    55            66'
# 位置索引 要变化的字符 对齐方向 显示宽度
"{:%^10}".format(55), "{:0^10}".format(55) #只对数字有效
('%%%%55%%%%', '0000550000')

python笔记3_第1张图片

你可能感兴趣的:(python,python,字符串,元组)