数据类型
字符串
1、进制转换
int("字符串",base=10),base=进制数(2、8、10、16),二八十六进制,须在字符串前添加0b/0o/0x。
空字符串、转换为布尔值时均为False
2、独有功能
① 判断开头、结尾:startswith、endswith;
用法:
v1 = "大家好"
result_1 = v1.startswith("大") #结果为True
result_2 = v1.endswith("好") #结果为True
② 判断是否为十进制,结果输出为布尔值:isdecimal
用法:
v1 = "789"
result = v1.isdecimal() # 结果为True
与isdigit的差异点:
v2 = "①"
result = v2.isdecimal() # False
result = v2.isdigit() # True
③ 去除字符串中两边的字符:strip,lstrip,rstrip # lstrip,rstrip为衍生,分别指定去除左边、右边的字符
msg = " hello,大 家好! "
result = msg.strip() # 默认为去除两边空字符,结果为"hello,大 家好!"
msg = " hello,大 家好"
result = msg.strip(好) #" hello,大 家好"
# ps:无法去除中间字符,若需要去中间字符需先分割。
应用场景:如用户输入验证码时出现空格,可去掉,提高用户体验(个人感觉)
④ 字符串大小写 :upper,lower
msg1 = "python"
result_1 = msg1.upper() # 结果为PYTHON
msg2 = "PYTHON"
result_2 = msg2.upper() # 结果为python
应用场景:验证码输入不用区分大小写
⑤ 字符串内容替换,得到新字符串:replace # 不改变原有字符
msg = "hello,张三"
msg_new = msg.replace("张","李") # 结果为"hello,李三"
# ps:批量替换需用到列表
应用场景:敏感字替换
⑥ 字符串切割,得到列表:split
msg = "hei/大家/好"
result = split("/") # 结果的result为列表
⑦ 字符串拼接,得到新的字符串:join #目前只会列表的拼接
msg_list = ["hello","大家好","呀"]
result = "_".join(msg_list) # 结果为 hello_大家好_呀。
msg = "喜欢{}、{}、{}"
data = msg.format("唱","跳","rap") # 结果为喜欢唱,跳,rap
⑧ 字符串、字节类型相互转化:encode、decode
data = "大家好"
result = data.encode("utf-8")
result_2 = result.decode("utf-8")
# ps:相互转化的编码类型需相同
⑨ 字符串内容、居中、居左、居右展示:center、ljust、rjust
v1 = "大家好"
data = v1.center(5,"-") #结果为-大家好-,数字为字符串共多少个,后面为补充的内容是什么
⑩ 填充0:zfill
data = "python"
v1 = data.zfill(8) #结果为00python,向前补充的
2、独有功能
相加、相乘、长度(len)、索引
① 相加
v1 = "hello" + "大家好" #结果为:hello大家好
② 相乘
v1 = "大家好" * 2 # 结果为:大家好大家好
③ 长度
msg = "大家好"
v1 = len(msg) # 结果为:3
④ 索引
data = "hello大家好"
v1 = data[0] # 结果为h
⑤ 切片,提取子序列
data = "hello大家好"
v1 = data[0,7] #结果为:hello大家