python第三周基本数据类型,字符,字符串,time库,format()
目录
整数类型:
没有取数范围限制,
二进制以0b或0B开头;八进制以0o或0O开头;十六进制以0x或0X开头
浮点数类型:
取值范围数量级约为-10^308至10^308,精度数量为10^-16.
浮点数运算存在不确定位数,不是BUG,因为运算的时候数会变成二进制参与运算,而再重新变成十进制时,存在不确定尾数。,所以python中0.1 + 0.2 != 0.3 ,因为有不确定尾数
浮点数科学记数法的表示形式 <a>e<b>=a * 10^b;
复数类型:
z = a + bj,b表示虚部,z.real获得实部,z.imag获得虚部。
数值运算操作符:x / y表示除,10 / 3= 3.33333...;x // y表示整数除,10 // 3 = 3; x**y表示x的y次幂,2**3 = 8;
数字类型的关系:存在一种逐渐扩展的关系:整数 --> 浮点数 --> 复数
例如 整数 +浮点数 = 浮点数;
数值运算函数:
abs(x)求绝对值;
divmod(x,y)商和余,divmod(10,3)结果为(3,1)
round(x,d):对x四舍五入,d是小数截取位数,不确定尾数一般发生在10^-16左右,round()十分有效,round(0.1+0.2,1) == 0.3;
pow(x,y)函数,计算x的y次方
max(x1,x2,x3...xn)直接返回最大值;
min(同上)直接返回最小值;
int(x)将x变为整数,舍弃小数部分;
float(x)将x变为浮点数,增加小数部分;
complex(x)将x变为复数,增加虚数部分;
#everyday.py dayup=1.0 dayfactor = 0.01 for i in range(365): if i % 7 in [6,0]: dayup = dayup*(1- dayfactor) else: dayup = dayup*(1+dayfactor) print("工作日的力量{:.2f}".format(dayup))
字符串类型及操作:
- 字符串类型的表示
- 字符串操作符
- 字符串处理函数
- 字符串处理方法
- 字符串类型的格式化
1,字符串是字符的有序数列,可对其内的字符进行索引;
字符串由两类四种表示方法:第一类字符串由一对单引号或一对双引号表示单行字符串 “内师大” ‘C’;第二类可由三单引号或三双引号表示多行注释;之前有说过三个单引号可以表示多行注释,是因为没有赋值给变量的字符串对程序结果没影响。
字符串切片法:<字符串>[M;N]表示M起到N之前,<字符串>[M:N:K],表示第M,N,K个字符
转义符‘ \ ’;"这里有个双引号(\“)"结果为 这里有个双引号(”)
转义符形成一些组合有特定用处:
"\b"表示回退 "\n"表示换行;"\r"表示回车(光标移动的本行行首)
2.字符串操作符:
x +y 表示连接两个字符串x和y,
n * x 或 x * n,表示复制n次字符串x,
x in s 如果x是s的字串,返回Ture,否则返回False;
len(x)表示字符串的长度(python中所有字符都占一个字节);
str(x)任意类型的x所对应的字符串形式str(1.23)= “1.23”;
hex(x)或oct(x)将整数x化为八进制或十六进制;
chr(x)x为Unicode编码,返回其所对应的字符;
ord(x)x为字符,返回其对应的Unicode值;
Unicode编码覆盖几乎世界上所有的字符的编码方式、
方法(编程专有名词,特指<a>.<b>的<>(),方法本身也是函数,但与<a>有关)
str.lower()或str.upper()返回字符串的全小写或全大写;
str.split(sep=None)返回一个列表“A,B,C”.split(",")结果为【‘A,‘B‘,‘C‘】
str.count(sub)返回字串sub在str中出现的次数“a apple a day”.count("a"),结果为4;
str.replace(old,new)返回字符串str副本,所有的old被替换为new;
str.center(width[,fillchar])字符串str根据宽度width居中,fillchar为填充;
str.strip(chars)从str中去掉其左侧和右侧chars中列出的字符
str.join(iter)在iter变量除最后元素外每个元素增加一个str “,”.oin("1234")结果为“1,2,3,4”
字符串类型的格式化(.format()):
<模板字符串>.format(<逗号分隔的参数>)
{<参数序号>:<格式控制标记>}
time库的使用:time库是python中处理时间的标准库
提供获取系统时间并格式化输出功能
时间获取:time()获取当前时间戳 ctime()获取当前时间戳并以易读方式表示 gtime()获取当前时间戳表示为计算机可处理的时间格式
时间格式化:
strtime(tpl,ts)
t=time.gmtime() time.strftime("%Y-%m-%d %H:%M:%S",t) //‘2018-09-3 12:22:20‘ //%Y年份 %m月份 %B月份名称 %b月份名称缩写 %d日期 %A星期 %a星期缩写 %H小时(24) %h(12) %p上下午 %M分钟 %S秒
strptime()和strftime相反的命令
t=‘2018-08-03 12:55:20‘ time.strptime(t,"%Y-%m-%d %H-%m-%S")
程序记时:
sleep()
def wait() time.sleep(3.3) wait()#程序将等待3.3秒后退出
per_counter()返回一个精确的时间计数值,单位为秒,由于起点不稳定,所以需要调用差值才有意义
start = time.perf_counter() end = time.perf_counter() end-start