第十八节
字符串处理方法
<string>.upper() lower capitalize首字母大写 strip去掉两边空格及去指定字符 split 按指定字符分割字符串为数组
isdigit 判断是否是数字类型 find 搜索指定字符串
\n换行
第十九节 元组
元组:包含多个元素的类型,元素之间用逗号分割 【外部可用括号,也可以不使用】
eg.t1 = 123, 456, "hello"
元组可以是空的 eg. t2=()
元组包含一个元素,eg. t3=123
三个特点:
- 元素可以是不同元素,元素也可以是另一个元组,加括号避免歧义 t3=123,456,("hello",''中国')
- 元组中各元素存在先后关系,可以通过索引访问元组中元素 t3[0]
- 元组定义后不能更改,也不能删除 【注】不可更改 更安全,若为了提高灵活性放弃安全性 也可用列表代替元组
元组的概念
- 与字符串类型类似,可以通过索引区间来访问元组中部分元素 t[1:]
- 与字符串一样,可以用+号和*号进行运算
第二十节 列表类型及其操作
列表的概念
- 列表与元组类似
- 列表中每个元素类型可以不一样
- 访问列表中元素时采用索引形式
- 列表与元组不同
列表可修改
列表的操作
for<var>in<seq>: 对序列进行循环列举
>>>list = [0,1,2,3,4,5]
>>>for i in list[0:3]
print(i)
0
1
2
>>>2 in list
True
<expr>in<seq> 成员检查,判断<expr>是否在序列中
pop
list.split() list为带空格的字符串,此函数将字符串从空格处拆分为列表
>>> "python is an excellent language".split()
['python','is','an','excellent','language']
第二十一节 math库与random库
数学库 ceil(x) 对浮点数向上取整
floor(x) 对浮点数向下取整
degrees(x)将弧度值转换为角度
radians(x) 将角度值转换成弧度
随机库
- seed(x) 给随机数一个种子值,默认随机种子是系统时钟
- random(x) 生成一个[0,1.0]之间的随机小数
- uniform(a,b) 生成a到b之间的随机小数
- randint(a,b)生成a到b之间的随机整数
- randrange(a,b,c)随机生成一个从a开始到b以c递增的数
- choice(<list>) 从列表中随机返回一个元素
- shuffle(<list>) 将列表中元素随机打乱
- sample(<list>,k) 从指定列表随机获取k个元素
import random
random.choice(list)
random.shuffle(list)
一般随机种子默认为系统时钟,若自行设定随机种子,则相同的随机种子第相同次数生成相同的随机数
>>> random.seed(10)
>>> random.uniform(1,10)
6.142623352209221
>>> random.uniform(1,10)
4.860001492076032
>>> random.seed(10)
>>> random.uniform(1,10)
6.142623352209221
>>> random.uniform(1,10)
4.860001492076032
第二十二节 π的计算
蒙特卡洛 利用随机试验求解问题
π计算的IPO
- 输入:抛点的数量
- 处理:对于每个抛撒点,计算点到圆心的距离,通过距离判断该点在圆内或圆外。统计在圆内点的数量
- 输出:π值
示例程序π的计算
#自己写并修改的,时间那里还有错误
import random
import math
import time
n = int(input("请输入抛点数量:"))
j = 0
clock = time.clock() # 好像不对
for i in range(0,n):
x = random.random()
y = random.random()
d = math.sqrt(x*x+y*y)
if d<=1 :
j = j+1
pai=4*j/n
print("π的值为:%f"%pai)
print("程序运行的时间是%-5.5ss"%clock) #好像不对
请输入抛点数量:10000
π的值为:3.142800
程序运行的时间是0.0 s
>>>
=== RESTART: C:\Users\dell\AppData\Local\Programs\Python\练习python\π的计算.py ===
请输入抛点数量:100000
π的值为:3.135160
程序运行的时间是6.037s
请输入抛点数量:500000
π的值为:3.139320
程序运行的时间是6.037s
>>>
=== RESTART: C:\Users\dell\AppData\Local\Programs\Python\练习python\π的计算.py ===
>>>
请输入抛点数量:800000
π的值为:3.140810
程序运行的时间是6.037s
Python3 格式化输出 %s & %d 等
1.打印字符串
print("My name is %s" %("Alfred.Xue")) #输出效果: My name is Alfred.Xue2.打印整数
print("I am %d years old." %(25)) #输出效果: I am 25 years old.3.打印浮点数
print ("His height is %f m"%(1.70)) #输出效果: His height is 1.700000 m4.打印浮点数(指定保留两位小数)
print ("His height is %.2f m"%(1.70)) #输出效果: His height is 1.70 m5.指定占位符宽度
print ("Name:%10s Age:%8d Height:%8.2f"%("Alfred",25,1.70)) #输出效果: Name: Alfred Age: 25 Height: 1.706.指定占位符宽度(左对齐)
print ("Name:%-10s Age:%-8d Height:%-8.2f"%("Alfred",25,1.70)) #输出效果: Name:Alfred Age:25 Height:1.707.指定占位符(只能用0当占位符?)
print ("Name:%-10s Age:%08d Height:%08.2f"%("Alfred",25,1.70)) #输出效果: Name:Alfred Age:00000025 Height:00001.708.科学计数法
format(0.0026,'.2e') #输出效果: '2.60e-03'