python ---------------for 循环巩固

xiaoxiao2021-02-28  31

今天和大家分享几个for循环的小练习

for循环

可迭代对象:range,字符串,列表,字典,,,,

for  变量  in  可迭代对象:

               你自己的代码

练习1.:请统计一个字符串中数字的个数

count = 0 content = "abc123def01ght456" for x in content: if x.isdigit(): count += 1 print("总共有{}个数字".format(count))

练习2.请计算1——100以内(包括100)5的倍数的和以及 既是2又是3的倍数的和

result_5 = 0 result_2_and_3 = 0 for x in range(1, 101): if x % 5 == 0: result_5 += x if x % 2 == 0 and x % 3 == 0: result_2_and_3 += x print("1-100所有5的倍数的和为{}".format(result_5)) print("1-100所有2和3的倍数的和为{}".format(result_2_and_3))

练习3.请计算1——100内的和,如果和的结果超过1000就不再计算了

total_result = 0 for x in range(1, 101): total_result += x if total_result >= 1000: break # 跳出整个循环: print(total_result)

练习4.请输入1——100以内所有的奇数

for x in range(1, 101): if x % 2 == 1: print(x)

综合练习

100以内(包括100)的猜数字游戏:三局两胜

1.最多比赛三次

2.谁先胜利两次就输出 ***胜利,不再进行第三次比试

3.若三次都比完,没人胜利则平局

4.规则:谁的数字大谁胜利,相同则平手

from random import randint user_win = 0 computer_win = 0 tied = 0 # enum:枚举/列举 for idx, x in enumerate(range(3)): print("---------------第{}局开始---------------".format(idx+1)) user_num = input("请用户输入一个数字") user_num = int(user_num) computer_num = randint(1, 100) if user_num > computer_num: result = "用户胜利了" user_win += 1 elif user_num == computer_num: result = "平局" tied += 1 else: result = "电脑胜利了" computer_win += 1 print("电脑的数是{},用户的数是{},{}".format(computer_num, user_num, result)) print("---------------第{}局结束---------------\n\n".format(idx + 1)) if user_win == 2: print("*" * 30+"\n最终结果:用户赢了两次!Game Over\n"+"*" * 30) break elif computer_win == 2: print("*" * 30+"\n最终结果:电脑赢了两次!Game Over\n"+"*" * 30) break elif tied == 3: print("*" * 30+"\n最终结果:平局\n"+"*" * 30) elif tied + user_win == 3: print("*" * 30+"\n最终结果:用户赢了,平局{}次\n".format(tied)+"*" * 30) elif tied + computer_win == 3: print("*" * 30+"\n最终结果:电脑赢了,平局{}次\n".format(tied)+"*" * 30)

今天就分享到这里,,,加油

转载请注明原文地址: https://www.6miu.com/read-2613230.html

最新回复(0)