文章目录
这篇博客主要是来总结这一周通过观看嵩天老师的视频所学习到的知识点。
基本数据类型
数字类型及操作
数字类型
-
整数类型
- 整数类型取值范围没有限制
- 常用pow(x,y)函数来计算x的y次方
- 有二进制、八进制、十进制、十六进制来表示形式
-
浮点数类型
- 取值范围和小数精度都存在限制
- 带有小数点及小数的数字
- 浮点数间运算存在不确定尾数
- 常用round(x,d)函数对x四舍五入,d是小数截取位数
-
复数类型
- z=a+bj,a是实部,b是虚部。
- z.real获得实部,z.imag获得虚部
数值运算操作符
- x+y: x与y之和
- x-y: x与y之差
- x*y: x与y之积
- x/y: x与y之商,结果是一个浮点数
- x//y: x与y之整数商
- x+: x本身
- -x: x的负值
- x%y:模运算
- x**y:幂运算
数值运算函数
- round(x[,d]) 四舍五入,d是保留小数位数
- max(x1,x2,x3,xn) 计算最大值
- min(x1,x2,x3,xn) 计算最小值
- int(x) 将x变为整数,舍弃小数部分
- float(x) 将x变为浮点数,增加小数部分
- complex(x) 将x变为复数,增加虚部部分
- abs(x) 取x的绝对值
- divmod(x,y) 输出x与y的商和余
字符串类型及操作
字符串类型的表示
- <字符串>[M]表示返回字符串的第M+1个字符
- <字符串>[M:N]表示返回一串子字符串,从M开始,到N结束,不包含N。
- <字符串>[M:N:K]表示根据步长K对字符串切片
- 转义符表示特定字符的本意,\b表示回退,\n表示换行,\r表示回车(光标移动到本行首)
字符串操作符
- x + y表示连接两个字符串
- n * x或x * n表示复制n次字符串x
- x in s 表示如果x是s的字串,返回true
字符串处理函数
- len(x)返回x的长度
- str(x)表示x所对应的字符串形式
- chr(u)表示x为unicode编码,返回其对应的字符
- ord(x)表示x为字符,返回其对应的unicode编码
字符串处理方法
- str.center(width[,fillchar])表示字符串根据宽度width居中,fillchar可以随便选择
- str.join(iter)表示在iter变量最后元素外每个元素后增加一个str
- str.strip(chars)表示从str中去掉其在左侧和右侧chars中列出的字符
- str.split(sep)表示返回一个列表,由str根据sep被分割的部分组成
字符串类型的格式化
{}.format()
<填充>:用于填充的单个字符
<对齐>:< 左对齐 ;> 右对齐 ;^ 居中对齐
<宽度>:槽设定的输出宽度
<,>: 数字的千位分隔符
<.精度>:浮点数小数精度或者字符串最大输出长度
实例:文本进度条
import time
scale = 10
print("--------程序执行---------")
for i in range (scale + 1):
a = "*" * i
b = "." * (scale - i)
c = i * 10
print("{:^3.0f}%[{}->{}]".format(c,a,b))
time.sleep(0.1)
print("--------程序结束---------")
input()
程序运行结果如下:
这里涉及到time库的使用,介绍几个比较简单也比较常用的函数
- ctime()表示获取当前时间,并以易读形式表示,返回字符串
- perf_counter()在一个程序中连续调用时,可以计算某部分程序运行的时间。
- sleep(s)可使程序等待s秒后退出
程序控制结构
程序控制结构这部分之前嵩天老师讲的比较基础,需要通过实例来体会与掌握。
程序分支结构
多分支结构
if <条件块>:
<语句块>
elif <条件块>:
<语句块>
elif <条件块>:
<语句块>
…
else:
<语句块>
异常处理
try :
<语句块1>
except :
<语句块2>
else :
<语句块3>
finally :
<语句块4>
finally对应语句块4一定执行,else对应语句块3在不发生异常时执行。
可以把多个except语句连接在一起,处理一个try中的多种异常。
程序循环结构
遍历循环
- 计数循环(N次)
- 计数循环(特定次)
上面的程序中,2是步长。 - 字符串遍历循环
- 列表遍历循环
- 文件遍历循环
条件循环
while <条件块>:
<语句块>
循环控制保留字break和continue在上学期的java课上老师强调的比较多,在这里,用法相似。
实例:圆周率的计算
from random import random
datas = 1000*1000
hits = 0.0
for i in range(1,datas + 1):
x, y = random(), random()
s = pow(x*x + y*y,0.5)
if(s <= 1):
hits = hits + 1
pi = hits/datas*4
print("{}".format(pi))
这个程序涉及到random库的使用,下面介绍几个函数:
- random():生成[0,1]之间的随机小数
- seed():初始化给定的随机数种子,默认为当前系统时间
- randint(a,b):生成一个[a,b]之间的整数
- randrange(m,n[,k]):生成一个[m,n)之间以k为步长的随机整数
- uniform(a,b):生成[a,b]之间的随机小数
- choice(seq):从序列seq中随机选择一个元素
- shuffle(seq):将序列seq中元素随机排列,返回打乱后的序列
数据类型和程序控制结构的相关知识点基本就这么多啦,还需要自己多多练习,才能真正掌握!!