python这个用while True怎么写啊?我只知道用while True写,但是不会写,有没有那种比较简单的办法?急

img


python这个用while True怎么写啊?我只知道用while True写,但是不会写,有没有那种比较简单的办法?急

  您所谓的while True:,实则就是一个死循环。用死循环写代码,必须设定跳出循环的条件,要不就真“死”了。🤪如——

#!/sur/bin/nve python
# coding: utf-8

k = 0
while True: # 也可以是 while 1: ,效果一样。
    print(f"{' 我是死循环 ':~^36}") 
    if k >100:
         break # 满足条件跳出循环。
    k += 1 # k 自增1。
print(f"\n{'':~^41}\n{' 完成了循环100次。 ':^34}\n{'':~^41}\n") 
  • 如果不写if k > 100: 后面的 break 语句,程序就会一直打印“我是死循环”。所以用 while True:,关键是要设计设定结束循环的条件。

  • 代码运行效果截屏图片

    img


不知道具体要求,先写个框架了:

def game():
    # 玩游戏
    pass


def show_info():
    # 显示总局数、赢的局数和赢得最多的拳
    pass


while True:
    game()
    ch = input()
    if ch.lower() == 'y':
        continue
    if ch.lower() == 'q':
        show_info()
        print('欢迎下次继续玩')
        break

该回答引用chatgpt:

img


def play_game():
    total_rounds = 0
    player_wins = 0
    rock_wins = 0
    paper_wins = 0
    scissors_wins = 0

    while True:
        # 游戏逻辑
        # ...

        # 询问玩家是否继续
        choice = input("是否继续游戏?(输入 'y' 继续,输入 'q' 退出): ")
        if choice.lower() == 'y':
            continue
        elif choice.lower() == 'q':
            print("总局数: ", total_rounds)
            print("玩家赢的局数: ", player_wins)
            print("玩家选择 '拳' 赢得最多的局数: ", max(rock_wins, paper_wins, scissors_wins))
            print("欢迎下次继续玩!")
            break
        else:
            print("无效的输入!请重新选择。")

play_game()