基础:字符串
- 字符拼接
- 长度计算
- 字符截取
- 字符分割
- 字符邻接
- 字符匹配
- 字符转换
- 字符格式化
- 字符编码
- 正则表达式入门
#字符拼接
a="hello"
b="world"
print(a+"-"+b)
#不同类型的可以先转换再做运算
print(a+str(123))
#长度的计算:
print(len(a))
print(len(b))
c="猜一下,字符多长"
print(len(c))
#计算字符长度
#截取:和序列的索引操作类似
print(b[1:3])
#分割:字符串对象.split(分割符号)
d="1 2 3 4 5".split()
print(d)
e="3,5,8,9,8"
print(e.split(","))
#邻接:连接符号.join(字符串列表)
f="&".join(["9","8","7","6"])
print(f)
#综合
g=f.split("&")
h="#".join(g)
print(h)
检索:count->字符个数
find->字符第一次出现的位置,查找不到会返回-1
index->字符第一次出现位置的索引,找不到会报错
rindex->从右往左找
startswitch()->以“ ”开头,返回bool类型
endswitch()->以“ ”结尾,返回bool类型
print(a.count("l"))
print(a.find("l"))
print(a.index("ll"))
print(a.index("o"))
print(a.rindex("l"))
print(b.startswith("wor"))
#字符大小写的转换:upper()、lower()
print(a.upper())
i=a.upper()
print(i.lower())
#去除空白符:strip()、lstrip()、rstrip()
a1=" hello "
print(a1.strip())
a2="###hello###"
print(a2.lstrip("#"))
print(a2.rstrip("#"))
#格式化%format
print("我叫%s,我今年%d岁了,身高%f米,我来自%s"%("小明",9,1.46,"厦门"))
print("这儿有一个%d"%11)
print("这儿有一个%08d"%11)
print("这儿有一个%.2f"%11.46)
print("我叫{},我今年{}岁了,身高{}米,我来自{}".format("小明",9,1.46,"厦门"))
输出类似银行的金额:
print("今日存入金额¥{:,.2f}元".format(1000012345.89123))
输出结果:
今日存入金额¥1,000,012,345.89元
两个占位符共用一个参数:
print("{0:d}的十六进制{0:#x}".format(100))
三个编码、两个方法:
编码:utf-8、GBK、GB2312
encode方法:字符串str->字节流bytes
decode方法:字节流bytes->字符流str
a3="人生苦短,我用python"
print(len(a3))
print(len(a3.encode("utf-8")))
print(len(a3.encode("GBK")))
a4=a3.encode("utf-8")
a5=a3.encode("GBK")
print(a4.decode())
print(a5.decode("GBK"))
正则表达式初入门:
import module
import re
a6="123456"
a7="789654"
a8="1234567"
print(re.match(r"\d{6}",a6))
print(re.match(r"\d{6}",a7))
# 从头到尾匹配成功输出$
print(re.match(r"\d{6}$",a8))
a9="800555"
print(re.match(r"8\d{5}$",a9))
a10="13700000000"
print(re.match(r"1[^012]\d{9}$",a10))