Python基础(二):基本数据类型
基本数据类型
数字类型及操作
数字类型
数字类型可以自动“拓宽”:整数→浮点数→复数
整数
4 种进制表示(十进制、二进制、八进制、十六进制)
浮点数
浮点数运算存在不确定尾数
浮点数可采用科学记数法表示
复数
数值运算操作符
x+y|x-y|x*y|x/y|x//y|x%y|x**y|+x|-xx op yop为二元操作符,例如
x += y
数值运算函数
abs(x) | pow(x,y[,z]) | divmod(x,y) | round(x,[,d]) | max(a,b,...) | min(a,b,...)[ ]表示参数可以省略divmod(x,y)同时输出商和余数pow(x,y[,z])计算(x**y)%zround(x[,d])四舍五入,d 是保留小数位数
int(x) | float(x) | complex(x)数字类型的显式转换
字符串类型及操作
字符串类型
如何表示
一对单引号,一对双引号,一对三单引号,一对三双引号
操作符:
x+y | x*n 或 n*x | x in sx*n或n*x:复制 n 次字符串 xx in s:判断 x 是 s 的子串
处理字符串的函数
len(s) | str(x) | hex(x) | oct(x)hex(x)与oct(x):整数 x 的八进制与十六进制小写形式字符串。chr(u) | ord(x)u 为 Unicode 编码,
chr(u)返回对应的字符x 为字符,
ord(x)返回对应的 Unicode 编码
字符串处理方法
.lower() | .upper() | .split(sep) | .count(sub) | .replace(old,new).center(width[,fillchar]) | .strip(chars) | .join(iter)字符串格式化
<模板字符串>.format(<逗号分隔的参数>)槽: 用
{}表示槽,如下图:
槽内部的写法:
{<参数序号>:<格式控制标记>}槽内部的格式控制标记:

思维导图

Tips
字符串处理方法
.lower()与.upper()返回字符串的副本,全部字符转为小写/大写 .count(sub)返回子串sub在str中出现的次数 .replace(old,new)返回字符串的副本,所有old子串被替换为new .center(width[,fillchar])让字符串根据宽度width居中,fillchar是用于填充的符号 .strip(chars)删除字符串两端的空格或指定字符chars。 "123abob321".strip('12')结果为3abob3.split(sep)以sep分割字符串,返回列表, "A,B,C".split(",")结果为['A','B','C'].join(iter)联结字符串元素。 "-".join("12345")结果为1-2-3-4-5split:分开,join:联合
字符串的格式化输出
.format(),对槽的内部控制格式加深理解
#eg1 print("工作日的努力参数是: {:.3f}".format(dayfac)) #eg2 print("\r{:^3.0f}%[{}->{}]{:.2f}s".format(c,a,b,d) ,end="") #eg3 N = eval(input()) for i in range(1,N+1,2): # 从1到N,步长为2 #print(('*'*i).center(N,' ')) # 一种方式 print("{:^{}}".format('*'*i,N)) # 另一种方式 # 注意如果用print("{:^N}".format('*'*i))是错误的Python 没有字符类型,不能直接进行字符加减运算,需借助
chr(u)和ord(x)函数#凯撒密码加密 plaintext = input() ciphertext = "" for p in plaintext: if 'a' <= p <= 'z': # 字符串比较 **c = chr(((ord(p)-ord('a'))+3)%26+ord('a'))** elif 'A' <= p <= 'Z': # 字符串比较 **c = chr(((ord(p)-ord('A'))+3)%26+ord('A'))** else: c = p ciphertext += c print(ciphertext)