3.1 数字类型操作
整数类型:可正可负,没有取值范围限制
pow(x,y) 计算
x
y
x^y
xy的大小
二进制:OB ob
八进制:0o 0O
十六进制: 0x 0X
浮点类型
10
−
16
{10}^{-16}
10−16精度
浮点数间运算存在不确定尾数问题。
python中用53位二进制表示小数部分,约
10
−
16
{10}^{-16}
10−16
round(x,d) d=1表示保留一位小数 对x四舍五入,d表示截取位数
4.3e-3 表示
4.3
×
10
−
3
{4.3} \times {10}^{-3}
4.3×10−3。
复数类型
j
z.real z.imag
数值运算
/ 正常除法
// 整数除法
% 取余
x**y
x
y
x^y
xy
类型间可进行混合运算,生成结果为“最宽”类型
整数
→
\rightarrow
→ 浮点数
→
\rightarrow
→ 复数
数值运算函数
abs(x)
divmod(x,y) 返回商和余数 二元数
pow(x,y,z) z参数可省略 表示结果取余
round(x,d) d是保留小数位数 round(x) 取整
max(x1,x2,x3,x4) 最大值函数
min(x1,x2,…,xn) 最小值函数
int(x) 将x变为整数,可将字符串变成整数
float(x) 将x变成浮点数
complex(x) 将x变成复数
3.2 实例3:天天向上的力量
数学思维转换为计算思维。
grit 名词 坚毅
3.3 字符串类型及操作
字符串:由0个或多个字符组成的有序字符序列。‘’ 或 “”
一对单引号或双引号表示。
一对三单引号,一对三双引号
三单引号形成的是字符串,可以当作注释
正向递增序号 反向递减序号
索引和切片
切片的高级用法:
str[m:n] m缺失表示至开头 n缺失表示至结尾
m能取到,而n不能,即[m, n)
str = "abcde"
str[1:3] #返回"bc"
str[1:] #返回"bcde"
str[:2] #返回"ab"
str[0:5] #注意:返回"abcde"
[m:n:k] 以步长为k获得字符
[::-1] 将字符串reverse
转义字符
转义符表达特定字符的本意
字符操作符
x + y
n * x 或 从 x * n
a in b 返回真或假
字符串处理函数
6个
len(x) 返回长度 无论是数字、标点符号、字母和汉字都是一个字符
str(x) 转换成字符串
x.reverse() 翻转字符串 无,不存在reverse()函数
eval(x) 去字符串
bin(x) 返回二进制,返回类型为字符串!!!
hex(x) oct(x) 返回十六进制 返回八进制
chr(u) 返回Unicode编码(一个数值)对应的字符
ord(x) 返回字符对应的Unicode编码(一个数值)
111万4111个编码 中文、英文、俄文、日文
chr(10004) √
chr(9801) 金牛 ♈
字符串处理方法
方法是编程中的一个专有名词
方法特指a.b()中的b()
str.lower()或str.upper() 返回全小写 全大写
str.split(sep=None) 返回列表类型list,且列表元素为字符串 split(“,”) 以逗号分隔
"1,2,3".split(",")结果为['1','2','3']
str.count(sub) 子串sub在str中出现的次数
str.replace(old,new) 将old替换成new
str.center(width,fillchar) 根据宽度width居中,fillchar表示填充
str.strip(chars) 去掉左右两侧的字符
str.join(iter) 在iter中每个元素后增加str,返回字符串类型
字符串转字符串
",".join("12345")结果为"1,2,3,4,5"
列表转字符串,需要保证列表元素为字符串
",".join(['1','2','3'])结果为'1,2,3'
字符串类型的格式化
print("...{索引}, ... , {索引}, ...".format(值1, 值2))
#索引{}为空,默认按照顺序取值
{索引:[填充字符][对齐方式][宽度]}
{索引:[填充字符][对齐方式][宽度.[小数点位数f]]}
print("{:+>30.3f}".format(a))
注意:格式化是对字符串进行格式表达的方式!!!
.format()方法
槽:占位信息符
六个格式控制参数:填充、对齐和宽度
填充
对齐 <左对齐 >右对齐 ^居中对齐
宽度
, 数字的千位分隔符
. 浮点数小数的精度 或 字符串最大输出长度
类型 整数类型 或 浮点数类型
整数类型
b 二进制
c unicode编码
d 十进制
o 八进制
x 十六进制
X 大写的十六进制
浮点数类型
e 科学计数法
E 大写科学计数法
f 非科学计数法
% 百分数形式
3.4 模块2:time库的使用
time库是Python中处理时间的标准库。
时间获取:
time() 获取当前时间戳 以秒单位为数值 1970年1月1日
ctime() 获取当前时间并以易读方式返回 字符串格式返回
gtime()
时间格式化:将时间以合理的方式展示出来
格式化 展示模板
strftime(tql, ts)
%Y 表示年份
%M 表示月份
%B 月份名称 英文全称
%b 月份名称 英文缩写
%d 日期,天数
%A 星期全称
%a 星期缩写
%H 时间 24小时制
%h 时间 12小时制
%p 上/下午
%M 分钟
%S 秒
strptime(str, tpl) 将一段字符串变成时间
struct_time格式
程序计时:
perf_counter()
sleep(s) 让程序休眠s秒
3.5 实例4:文本进度条
采用字符串方式打印可以动态变化的文本进度条
#TextProBarV1.py
import time
scale = 10
print("------执行开始------")
for i in range(10):
a = '*' * i
b = '.' * (scale - i)
c = (i / scale) * 100
print("{:^3.0f}%[{}->{}]".format(c,a,b))
time.sleep(0.1)
print("------执行结束------")
结果为,
双击即可运行脚本
#TextProBarV2.py
import time
for i in range(101):
print("\r{:3}%".format(i), end="")
time.sleep(0.1)
shift + 右键 ⇒ \Rightarrow ⇒ 在此处打开Powershell窗口(S)
增加进度条可以给用户带来很好的体验。