字符串
字符串:单引号和双引号的作用完全是一样的
字符串、列表互转:
print("abc#def#gd".split("#")) # ['abc', 'def', 'gd'] print(''.join(['abc', 'def', 'gd'])) # abcdefgd
a = list('abracadabra')
print(a) # ['a', 'b', 'r', 'a', 'c', 'a', 'd', 'a', 'b', 'r', 'a']
word = '字符串' sentence = "这是一个句子。" paragraph = """这是一个段落, 可以由多行组成"""
str = 'Runoob' print(str) # 输出字符串 print(str[0:-1]) # 输出第一个到倒数第二个的所有字符 print(str[0]) # 输出字符串第一个字符 print(str[2:5]) # 输出从第三个开始到第五个的字符 print(str[2:]) # 输出从第三个开始后的所有字符 print(str * 2) # 输出字符串两次 print(str + '你好') # 连接字符串 print('------------------------------') print('hello\nrunoob') # 使用反斜杠(\)+n转义特殊字符 print(r'hello\nrunoob') # 在字符串前面添加一个 r,表示原始字符串,不会发生转义
格式化字符串
print("{}:{}".format('192.168.0.100', 8888)) # 192.168.0.100:8888 位置映射 print("{server}{1}:{0}".format(8888, '192.168.1.100', server='Web Server Info :')) # Web Server Info :192.168.1.100:8888 关键字映射 print("{0[0]}.{0[1]}".format(('baidu', 'com'))) # baidu.com 元素访问 注意:('baidu', 'com')是一个tuple # 填充对齐 # # ^、<、>分别是居中、左对齐、右对齐 print("{0}*{1}={2:*>5}".format(3, 2, 2 * 3)) # 3*2=06 3*2=****6 # {2:*>5} 2表示引用后面的第2个位置,:表示要采用什么格式,*表示填充什么字符,〉表示右对齐,5表示字符宽度(填充字符数+原有字符数)是多少 print("{:*^30}".format('centered')) # ***********centered*********** 全长等于30 ^ 表示居中对齐 # 九九乘法表 for i in range(1, 10): a = 1 while a <= i: print("{0}*{1}={2:0>2}".format(a, i, a * i), end="\t") a += 1 print() # 精度设置 f 表示浮点 print("{:.3f}".format(2.1415)) # 2.142 print("{:.10f}".format(3.1415)) # 3.1415000000 # 设置宽度 d 表示宽度,用空格填充 for x in range(1, 11): print('{0:2d} {1:3d} {2:4d}'.format(x, x*x, x*x*x)) # 1 1 1 # 2 4 8 # 3 9 27 # 4 16 64 # 5 25 125 # 6 36 216 # 7 49 343 # 8 64 512 # 9 81 729 # 10 100 1000 table = {'Sjoerd': 4127, 'Jack': 4098, 'Dcab': 8637678} print('Jack: {0[Jack]}; Sjoerd: {0[Sjoerd]}; Dcab: {0[Dcab]:10d}'.format(table)) print('Jack: {Jack:d}; Sjoerd: {Sjoerd:d}; Dcab: {Dcab:d}'.format(**table)) # Jack: 4098; Sjoerd: 4127; Dcab: 8637678 # Jack: 4098; Sjoerd: 4127; Dcab: 8637678
str.title() 首字母变成大写,其余的改成小写
>>> name = 'i love you'
>>> print(name.title())
I Love You
>>>
str.strip(arg) 删除首尾的arg,默认是空格
str.rstrip(arg) 删除右边的arg
str.lstrip(arg) 删除左边的arg
print('12'.zfill(5)) # 00012 前面填充0
print('123'.center(5, '*')) # *123*
print('123'.ljust(5, '*')) # 123**
print('123'.rjust(5, '*')) # **123
其它一些方法:
print('abcdaba'.count('a')) # 3
print('1.1'.isdigit()) # False
print('1.1'.isnumeric()) # False
print('一二三四五'.isdigit()) # False
print('一二三四五'.isnumeric()) # True
print(b"2".isdigit()) # True
print(b'n'.isdigit()) # False
# print(b'1'.isnume....) 不识别这个方法
- Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
- Python中的字符串不能改变。
-
Python3 的六个标准数据类型中:
- 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
- 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

浙公网安备 33010602011771号