wyh138 发表于 2023-12-13 11:44

跟着教程默写的一段猜拳小代码

本帖最后由 wyh138 于 2023-12-13 11:52 编辑

第一次发帖,如有不妥之处请指点
这段代码是仿照教程默写的,刚刚学习Python 一周,很多知识还没看,我还是一枚小白(狗头护体)。。。
import random
import time
print('''
<<<<<<<<猜拳小游戏中心>>>>>>>
''')
pc=0
cc=0
pn=input('请输入玩家姓名\n')
print('1.后羿2.鲁班3.元芳')
cn=eval(input('请选择电脑出战姓名'))
time.sleep(0.5)
if cn==1:
    print('您选择了与后羿对战')
    cn='后羿'
elif cn==2:
    print('你选择了与鲁班对战')
    cn='鲁班'
elif cn==3:
    print('您选择了与元芳对战')
    cn='元芳'
else:
    print('电脑选择了最强射手鲁班与你对战')
    cn='鲁班'
print()
count=1
print(f'{pn}VS{cn}\n')
while True:
    print('1.剪刀 2.石头 3.布\n')
    pf=int(input('请出拳'))
    time.sleep(0.5)
    if pf==1:
      print(pn,'出剪刀')
    elif pf==2:
      print(pn,'出石头')
    elif pf==3:
      print(pn,'出布')
    else:
      print(pn,'出剪刀')
      pf=1
    print()            
    cf=random.randint(1,3)
    time.sleep(0.5)
    if cf==1:
      print(cn,'出剪刀')
    elif cf==2:
      print(cn,'出石头')
    else :
      print(cn,'出布')
    print()
    print(f'第{count}局')
    time.sleep(1)
    if cf==pf:
      print('平局')
    elif (pf==1 and cf==2) or (pf==2 and cf==3)or (pf==3 and cf==1) :
      print(cn,'胜')
      cc+=1
    else:
      print(pn,'胜')
      pc+=1
    count+=1
    print(count*'< >')   
    answer=input('继续?y/n\n')
    if answer=='n':
      break
print('结束游戏')
print(f'{pn}得{pc}分\t{cn}得{cc}分')         
      
      


         

   

wkdxz 发表于 2023-12-13 16:13

才学一周就能写这么多,不错!如果使用字典来存储选项的话,可以简洁一点。

players = {1: "后羿", 2: "鲁班", 3: "元芳"}


for n, player in players.items():
    print(n, player)

player_name = input("请输入玩家姓名:")

computer_choice = int(input("请选择电脑出战编号:"))

if computer_choice in players:
    print(f"您选择了与{players}对战")
    computer_name = players
else:
    print("电脑选择了最强射手鲁班与你对战")
    computer_name = players

XyD3 发表于 2023-12-13 16:41

最强射手可以主动控制下胜率::lol

z746090883 发表于 2023-12-13 17:48

加油。已经很棒了!

Listentomusic 发表于 2023-12-13 18:17

加油,小伙子!

wyh138 发表于 2023-12-13 19:27

wkdxz 发表于 2023-12-13 16:13
才学一周就能写这么多,不错!如果使用字典来存储选项的话,可以简洁一点。

p ...

用字典的真想法不错,逻辑简洁许多。因为我是看的教程,所以思维被固定住了。
感谢老师的优化。

wyh138 发表于 2023-12-13 19:29

XyD3 发表于 2023-12-13 16:41
最强射手可以主动控制下胜率:

我感觉应该是可以。主要是Python这里还没接触到这么多,只能想凑合着练一练了:lol:lol

wyh138 发表于 2023-12-13 19:30

z746090883 发表于 2023-12-13 17:48
加油。已经很棒了!

加油 老师:lol

wyh138 发表于 2023-12-13 19:31

Listentomusic 发表于 2023-12-13 18:17
加油,小伙子!

谢谢老师的鼓励
:lol:lol
页: [1]
查看完整版本: 跟着教程默写的一段猜拳小代码