循环输入5个100以内的正整数,求最大,最小,和.
max_value = 0 min_value = 100 draw = 0 i = 1 while i <= 5: n = int(input(f'请输入第{i}个100以内的整数:')) if n > max_value: max_value = n if n < min_value: min_value = n # 将输入的数字累加到变量sum中 # sum = sum + n draw += n print(f'当前的最大值为:{max_value}') print(f'当前的最小值为:{min_value}') i += 1 print(f'最终的最大值为:{max_value},最终的最小值为:{min_value},所有数字的和为:{draw}')
猜拳游戏
import random # 记录你赢的次数 a = 0 # 计算机赢的次数 b = 0 # 平局次数 c = 0 i = 1 while i <= 10: cmp = random.randint(0, 2) you = int(input('计算机思考完毕,该你了:0-石头 1-剪刀 2-布')) # 比输赢(1.从用户的输赢的角度来考虑 2.可以从用户出的什么角度来考虑) if (you == 0 and cmp == 1) or (you == 1 and cmp == 2) or (you == 2 and cmp == 0): print('you win!') a += 1 elif you == cmp: print('平局') c += 1 else: print('you lose!') b += 1 i += 1 else: # 与while循环结合使用的else 会在循环正常结束后执行 print(f'你获胜{a}次,平局{c}次,输了{b}次,胜率{a / 10 * 100}%')
- 循环结构
- while循环
- 语法:
- while 条件:
- 循环体
- 条件趋向终止
- while 条件:
- 语法:
- for 循环
- 语法:
- for 变量 in range():
- 循环体
- range(stop)
- range(start,stop,step)
- start:表示起点,可以不写,默认从0开始
- stop:表示终点(但是不包含这个终点这个数)
- step:表示步长,默认为1
- for 变量 in range():
- 语法:
- 循环控制的关键字
- break
- 结束当前循环
- continue
- 跳过本次循环
- break
- for
- pass
- else:
- pass
- while循环
- 嵌套循环
- 嵌套分支:
- 嵌套循环
- 外循环
- 内循环
- while
- while
- while
- for
- for
- for
- for
- while
- 外循环
- 执行
- 嵌套分支:
空心矩形
for i in range(6): for j in range(8): # 第一行,最后一行,或者第一列,最后一列 if i == 0 or i == 5 or j == 0 or j == 7: print('* ', end='') else: print(' ', end='') print()
空心三角形
for i in range(1, 5): for k in range(5 - i): print(' ', end='') for j in range(2 * i - 1): print('*', end='') print()
1-100分行排列:
count = 1 count2 = 0 for i in range(1, 101): # 行 print(i, end='\t') count2 += 1 if count2 == count: print() count += 1 count2 = 0
- 列表(list)
- 可以存储多个任意类型的数据
- 引入
- 存储某个学生的信息 名字 年龄 性别
- 定义
- stu-info =[]
- 内存结构
- 栈上存地址
- 堆上存数据
- 求列表长度(列表中元素的个数)
- len(list)
- 列表特点:
- 可以重复,有序
- 索引问题
- 可以访问列表中的具体元素
- list[index]
- 注意:
- 索引越界问题 IndexError
- 索引范围:
- [0,len(list)-1]
- 序列操作
- 相加
- 重复
- 切片
- 遍历
- 序列解包
- 多个变量名来接收元素
列表内存结构简图