赞
踩
经过一周的学习后,对这一周学习的重要知识点进行一下总结,第一个重要的知识点就是:Python语言元素之变量。
变量是数据的载体
变量的值可以被读取和修改
Python中的数据类型很多,而且也允许我们自定义新的数据类型,这里我们需要先了解几种常用的数据类型。
整型(int
):Python中可以处理任意大小的整数,而且支持二进制(如0b100
,换算成十进制是4)、八进制(如0o100
,换算成十进制是64)、十进制(100
)和十六进制(0x100
,换算成十进制是256)的表示法。
浮点型(float
):浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,浮点数除了数学写法(如123.456
)之外还支持科学计数法(如1.23456e2
)。
字符串型(str
):字符串是以单引号或双引号括起来的任意文本,比如'hello'
和"hello"
。
布尔型(bool
):布尔值只有True
、False
两种值,要么是True
,要么是False
。
运算符 | 描述 |
---|---|
[] [:] | 下标,切片 |
** | 指数 |
~ + - | 按位取反, 正负号 |
* / % // | 乘,除,模,整除 |
+ - | 加,减 |
>> << | 右移,左移 |
& | 按位与 |
^ \| | 按位异或,按位或 |
<= < > >= | 小于等于,小于,大于,大于等于 |
== != | 等于,不等于 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not or and | 逻辑运算符 |
= += -= *= /= %= //= **= &= |= ^= >>= <<= | (复合)赋值运算符 |
分支结构就是指代码中有多条路劲,但是只有其中一条会被执行。在Python中,要构造分支结构可以使用if
、elif
和else
关键字。
具有代表性的例子就是数学上的分段函数求值:
x = float(input('x = '))
if x > 1:
y = 3 * x - 5
elif x >= -1:
y = x + 2
else:
y = 5 * x + 3
print(f'f(x) = {y}')
for-in
循环例如求两个数的最大公约数
x = int(input('x = '))
y = int(input('y = '))
for i in range(x, 0, -1):
if x % i == 0 and y % i == 0:
print(i)
break
print(f'{x}和{y}的最大公约数:{i}')
while
循环。while
循环通过一个能够产生或转换出bool
值的表达式来控制循环,表达式的值为True
则继续循环;表达式的值为False
则结束循环。如:输入三角形三条边的长度,如果能构成三角形就计算周长和面积,如果不能构成三角形,提示用户重新输入,直到正确。
while True:
a = float(input('a = '))
b = float(input('b = '))
c = float(input('c = '))
if a + b > c and a + c > b and b + c > a:
x = a + b + c
p = x / 2
s = (p * (p - a) * (p - b) * (p - c)) ** 0.5
print(f'周长为{x}, 面积为{s}')
break
else:
print('不能构成三角形,请重新输入')
上面的代码中使用while True
构造了一个条件恒成立的循环,也就意味着如果不做特殊处理,循环是不会结束的,这也就是常说的“死循环”。为了能够退出循环结构,我们使用了break
关键字,它的作用是提前结束循环。
和分支结构一样,循环结构也是可以嵌套的,也就是说在循环中还可以构造循环结构
如果知道循环的次数,我们通常使用for
循环;如果循环次数不能确定,可以用while
循环。在循环中还**可以使用break
**来提前结束循环。
例子:嵌套循环例子:求1-100之间的所有质数
for n in range(2, 100):
is_prime = True
for i in range(2, n):
if n % i == 0:
is_prime = False
break
if is_prime:
print(n, end=' ')
列表(list)
元组(tuple)
集合(set)
字典(dict)
通过[]建立
append :在末尾追加元素
insert :在指定位置插入元素
pop :删除最后的元素
nums = [10, 100, 1000] print(type(nums)) print(nums) rules = ['富强,民主,文明,和谐', '自由,平等,公正,法治', '爱国,敬业,诚信,友善', ] print(type(rules)) print(rules) nums.append(10000) nums.insert(0, 1) print(nums) rules.pop() print(rules)
列表的遍历是指把列表中的每个元素依次取出来
1、先从简单的取一个元素开始,如:
nums = [8, 15, 5, 4, 7, 20]
print(nums[5])
表示从0开始,第5个下标位置的数,一定要注意,python中是从0开始取下标的
2、替换列表中指定位置的元素
nums = [8, 15, 5, 4, 7, 20]
print(nums[5])
nums[2] = 120
print(nums)
表示将下标为2的位置的元素替换成120
nums = [8, 15, 5, 4, 7, 20]
for i in range(6):
print(nums[i])
表示把列表里的元素依次取出来(即遍历)
上面这个代码只能对列表进行读取的操作,而有时候我们还需要对列表中的数进行改写,那么我们就需要用到下面这种循环结构
nums = [8, 15, 5, 4, 7, 20]
for i in range(len(nums)):
print(nums[i])
nums[i] = 100
print(nums)
这个我们可以从运行结果看到,不仅可以遍历列表,还可以把列表中的数进行改写
有时候我们不仅需要得到列表里的数,而且还需要知道它每个数对应的下标。那么就需要用到以下的代码
nums = [8, 15, 5, 4, 7, 20]
for i, x in enumerate(nums):
print(i, x)
例子01——将一颗骰子掷60000次,统计每一个点数出现的次数
import random f1 = f2 = f3 = f4 = f5 = f6 = 0 for _ in range(60000): i = random.randrange(1, 7) if i == 1: f1 += 1 elif i == 2: f2 += 1 elif i == 3: f3 += 1 elif i == 4: f4 += 1 elif i == 5: f5 += 1 else: f6 += 1 print(f'1点出现的次数{f1},2点出现的次数{f2},3点出现的次数{f3},4点出现的次数{f4},5点出现的次数{f5},6点出现的次数{f6},')
上面这个需要一一打出,可能有点冗余了,所有我们可以用遍历改进一下
import random
fs = [0] * 6
for _ in range(60000):
x = random.randrange(1, 7)
fs[x - 1] += 1
print(fs)
for i, value in enumerate(fs):
print(f'{i + 1}点摇出了{value}次')
你看,这样就看上去舒服得多
例子02
输入10个整数,计算平均值、方差、标准差和极差,并找出最大值和最小值
nums = [] for _ in range(10): temp = int(input('请输入数据: ')) nums.append(temp) print(nums) mean_value = sum(nums) / len(nums) total = 0 for num in nums: total += (num - mean_value) ** 2 # 方差 ---> variance ---> var var_value = total / (len(nums) - 1) # 标准差 ---> standard deviation ---> std / stdev std_value = var_value ** 0.5 max_value, min_value = max(nums), min(nums) print(f'均值: {mean_value}') print(f'方差: {var_value}') print(f'标准差: {std_value}') print(f'极差(全距): {max_value - min_value}')
rd deviation —> std / stdev
std_value = var_value ** 0.5
max_value, min_value = max(nums), min(nums)
print(f’均值: {mean_value}’)
print(f’方差: {var_value}’)
print(f’标准差: {std_value}’)
print(f’极差(全距): {max_value - min_value}’)
[外链图片转存中...(img-3cKuUoPX-1627184185374)]
### 总结:遍历很重要,一定要通过大量的练习来达到融会贯通。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。