目录:字符转义,编码解码,格式化补充,format扩展,进制转化,深浅拷贝 转义:字符前存在,在特定情况下字符就不再表示本身的意思代码 功能 例子 n 换行符 print(‘hellonworld’) t 水平制表符 print(‘thellotworld’) b 退格,往前删除一格 print(‘hell bo’) r 当前位置移到本行开头,r之前的数据被后面的覆盖,不是删除 print(‘ herllo’) \ 一个单斜杠 print(‘ \’) ‘ 一个单引号 print(”’) ” 一个双引号 print(‘”‘) 一个空格(仅用于交互式环境下,也就是命令窗口中) print(‘hersdf’) a 电脑提示音(仅用于交互式环境下) print(‘a’)
在字符串前加r,就可以防止转义 print('t00b')print(r't00b')
00b t00b 编码(encode)和解码(decode)a = '你好 python'b = a.encode('utf-8')print(b)print(b.decode('utf-8'))
b’xe4xbdxa0xe5xa5xbd python’ —- 只编码中文字符串,英文字符串不变 你好 python — 解码要先新设变量存储编码后的数据,解码是在新变量的基础上解 格式化补充代码 功能 例子 %s 占位符 print(‘%s’ % ‘帅’) %r 显示原数据类型 print(‘%r’ % ‘帅’) %d 整数 print(‘%d’ % 数字) %f 浮点数 print(‘%f’ % 数字) %c 查找ASCII表(就是一个特殊的表)里对应数字的元素 print(‘%c’ % 数字) %o 将数字转为8进制(逢8进1) print(‘%o’ % 数字) %x 16进制 (逢16进1) print(‘%x’ % 数字) %e 科学计数法 print(‘%e’ % 数字) – 左对齐,用法:%-6指定长度.4指定小数点后面的位数 print(‘%-6.4f’ % 10.3) + 显示正号 print(‘%+6.4f’ % 10.3) %数字s 设置格式化长度 print(‘%5s’ % ‘ab’)
1.%s 占位符 print('%s年%s月%s日' % (2021,4,28))
2021年4月28日 2.%r 显示原数据类型 print('%r' % ('2021,4,28'))
‘2021,4,28’ — 原本的引号都一并输出,和原数据一模一样 3.%d 整数 print('%d' % 1.8) #相当于向下取整
1 4.%f 浮点数 print('%f' % 1.4) #自动保留六位小数
1.400000 5.%c 查找ASCII表(就是一个特殊的表)里对应数字的元素 print('%c' % 65)print('%c' % 100)
A d 6.%o 8进制(逢8进1) print('%o' % 65)
101 7.%x 16进制 print('%x' % 65)
41 8.%e 科学计数法 print('%e' % 65) #65 = 6.5 *10的一次方,结果中的01=10的1次方
6.500000e+01 9.%-6指定长度 .4指定小数点后面的位数 print('%-6.4f' % 10.3) #4规定小数点后面有几位,f代表浮点数,6为指定长度;优先满足小数点后几位数
10.3000 10.%+ 显示正号 print('%+6.4f' % 10.3)
+10.3000 11.%数字s 设置格式化长度 print('%5s' % 'ab')
ab — ab前面空了三格 format扩展功能 例子 保留小数点后两位数 print(‘{:.2f}’.format(10.3333333333)) 指定传入,保留小数点后两位数 print(‘{s:.2f}’.format(s = 10.33333333333)) 百分比格式化 print(‘{:.2%}’.format(0.33)) 转16进制 print(‘{:x}’.format(20)) 转8进制 print(‘{:o}’.format(20)) 左对齐,长度为10 print(‘{a:<10}’.format(a = 10.333, b = 21.21)) 传入数据长度不足,用x填充 print(‘{a:x<10}’.format(a = 12.1, b = 23)) 右对齐 print(‘{a:x>10}’.format(a = 12.1, b = 23)) 两端对齐 print(‘{a:x^10}’.format(a = 12.1, b = 23))
1.保留小数点后两位数 print('{:.2f}'.format(10.3333333333))
10.33 2.指定传入,保留小数点后两位数 print('{s:.2f}'.format(s = 10.33333333333))
10.33 3.百分比格式化 print('{:.2%}'.format(0.33))
33.00% 4.转16进制 print('{:x}'.format(20))
14 5.转8进制 print('{:o}'.format(20))
24 6.左对齐,字符长度为10 print('{a:<10}'.format(a = 10.333, b = 21.21))
10.333 — 3的后面还有4个空格 7.传入数据长度不足,用x填充 print('{a:x<10}'.format(a = 12.1, b = 23)) #<箭头尖指向左边,所以往左对齐
12.1xxxxxx 8.右对齐 print('{a:x>10}'.format(a = 12.1, b = 23)) #>箭头尖指向右边,所以往右对齐
xxxxxx12.1 9.两边对齐 print('{a:x^10}'.format(a = 12.1, b = 23))
xxx12.1xxx 进制转化代码 功能 例子 bin() 十进制转二进制 bin(4) oct() 十进制转八进制 oct(10) hex() 十进制转十六进制 hex(16) int(‘输入需转化的数字’, 输入进制对应的数字) 其它进制转十进制 int(‘100’,2) ord() 将字符转换为ASCII码 ord(‘a’) chr() 将ASCII码转换成字符 chr(97)
1.bin() 十进制转二进制 print(bin(4)) #4 = 2*2,逢2进1,所以就是10*10 = 100
0b100 — 0b表示进制,后面的100才是4转2进制的值 2.oct() 十进制转八进制 print(oct(10)) #10=8+2,逢8进1,所以为12
0o12 3.hex() 十进制转十六进制 print(hex(16)) #16=16+0,逢16进1,所以为10
0x10 4.int(‘输入需转进制的数字 ‘, 输入进制代表的数字)其他进制转十进制 int('100',2) #需要在交互模式环境下(或者python console);在命令窗口中,只能转为16进制,输其他进制会报错
4 5.ord() 将字符转换为ASCII码 print(ord('a'))
97 6.chr() 将ASCII码转换成字符 print(chr(97))
a 深浅拷贝(一般针对嵌套列表)1.浅复制—copy()—-内层id地址一致,外层不一致 浅复制:内层id一致,外层不一致 内层id地址一致,说明改动内嵌列表,其他含有这个内嵌列表的列表都会跟着改变 浅复制:内层id一致,a列表改变,b和c也跟着一起变 2.深复制—- 调用copy内置库(import copy)—copy.deepcopy() 内层地址不一致,外层地址不一致 深复制,内层地址不一致,当一列表改变时,另一列表不受影响 |
沙发等你来坐!