1-1 name = "alex" print(name.capitalize()) # 所有有下划线的 比如 __ge__ 我们不用管,它们是内部的,是我们不能用的
1-2 name = "my name is alex" print(name.count("a"))
1-3 name = "my name is alex" print(name.center(50,"-"))
1-4 encode 在Python3 中 将一个字符串 转换成 二进制 name = "my name is alex" print(name.encode(self,encoding,errors))
1-5 # endswith 以……结尾 判断字符串 以什么结尾,一致则返回 True name = "my name is alex" print(name.endswith("ex")) # 比如想看一个邮件,是不是以 .com 结尾
1-6 name = "my name is alex" print(name.expandtabs(tabsize=30)) -→ my name is alex
1-7 name = "my name is alex" print(name.find("y")) -→ 1 # 取出找到的对应字符的索引 name = "my name is alex" print(name.find("name")) -→ 4 为什么返回 4 ? 因为字符串 也可以切片 print(name[name.find("name"):9]) -→ name print(name[name.find("name"):]) --> name is alex 字符串也可以切片,用法和列表是一样的
1-8 format 格式化 name = "my name is {name} and i am {year} old" print(name.format(name='alex',year=23)) --> my name is alex and i am 23 old
1-9 format_map format_map 中的内容为一个字典 name = "my name is {name} and i am {year} old" print(name.format_map({'name':'alex','year':12})) 这是一个字典,这种语法比较少用,知道 format 即可 --> my name is alex and i am 12 old
1-10 isalnum 判断是不是阿拉伯数字 name = "my name is alex" print(name.isalnum()) --> False print('ab23'.isalnum()) --> True 包含数字和英文可以,有特殊字符不行
1-11 isalpha 纯英文字符 print('ab23'.isalpha()) --> False print('abK'.isalpha()) --> True
1-12 isdecimal 是否为十进制 print('12222'.isdecimal()) 1-13 isdigit 是否为整数 1-14 isidentifier 标识符 print('1A'.isidentifier()) # 判断是不是一个合法的标识符,其实就是相当于判断是不是一个合法的变量名 --> False print('a1A'.isidentifier()) --> True print('a1A星轨'.isidentifier()) --> True # 中文也可以当变量名,只是千万别这么干
1-15 isnumeric 判断是否为数字,虽然可以用 isdigit;不知道这个存在的目的是什么,忘记它吧 print('33'.isnumeric()) print('33.33'.isnumeric()) 1-16 isspace() 判断是否为空格 1-17 istitle() 判断每个字母是否为大写 print('My name is '.istitle()) --> False print('My Name Is '.istitle()) --> True 1-18 isprintable() 判断是否可以打印的 Linux 上的 tty drive file 文件是不能打印的,就会返回 False 用途较少 1-19 isupper 大写
1-20 join print('My Name Is '.join("=="))? join的玩法 print('+'.join(['1','2','3'])) --> 1+2+3 python3 中 不支持数字,只能通过字符串连接 1-21 ljust() 有两个参数,一个是长度,一个是,, name = "my name is {name} and i am {year} old" print(name.ljust(50,'*')) --> my name is {name} and i am {year} old************* 长度 50;如果不够,用 * 补上 1-22 rjust() 刚好相反 name = "my name is {name} and i am {year} old" print(name.rjust(50,'-')) --> -------------my name is {name} and i am {year} old 1-23 lower() 大写变小写 upper() 小写变大写 print('Alex'.lower()) --> alex print('Alex'.upper()) --> ALEX 1-24 lstrip() 默认去掉两边的空格和回车 lstrip 就是从左边去掉空格和回车 print('Alex '.lstrip()) print('----') 表示换行 print(' Alex'.lstrip()) print('----') 1-25 rstrip 去掉右边的空格和回车,用法同上 1-26 strip 就是去掉两边的,全部都去掉
1-27 maketrans() p = str.maketrans("abcdef",'123456') print("alex li".translate(p)) --> 1l5x li 是对应的功能,类似于翻译对应的感觉;加密的密码可以这样玩 必须保证数据一样多 1-28 replace() 替换 >>> print('alex li'.replace('l','L',1)) aLex li 只替换了一个,因为后面数字为 1 1-29 rfind() 从左往右,找到最右边,最后面值的下标并返回 In [1]: print('alex li'.rfind('l')) 5 In [2]: print('alex lil'.rfind('l')) 7
1-30 split() 把字符串按空格分出列表 >>> print('al ex lil'.split(' ')) 按空格分 ['al', 'ex', 'lil'] >>> print('al ex lil'.split('l')) 按字母 “l” 分 ['a', ' ex ', 'i', ''] l 没了,因为 l 被当成 分隔符了 如何用呢?比如有一段字符,只想提取数字 >>> print('1+2+3+4'.split('+')) ['1', '2', '3', '4'] 1-31 splitlines() 如果遇到换行,按换行符分,可以自动识别不同系统的换行 >>> print('1+2 +3+4'.splitlines()) ['1+2', '+3+4'] 与 >>> print('1+2 +3+4'.split(' ')) ['1+2', '+3+4'] 是完全一样的效果 1-32 swapcase() 交换大小写 >>> print('Alex Li'.swapcase()) aLEX lI 1-33 title() >>> print('lex Li'.title()) Lex Li 1-34 zfill() 可以用于补位 >>> print('lex li'.zfill(50)) 00000000000000000000000000000000000000000000lex li