python编程猜拳游戏_python代码实现猜拳小游戏

本文实例为大家分享了python代码实现猜拳小游戏的具体代码,供大家参考,具体内容如下

游戏实现具体功能

原有的用户登录的信息均能保存在txt文件里,注册的信息也能保存在txt里面

格式如下:

531da23126c1102eac374684b10a243a.png

便于之后转换成列表字典形式添加注册数据

用户的猜拳记录也能保存在txt中并以如下格式显示

格式如下:

7a4956a6175bf779de4bd917eb7edc2e.png

具体Python代码:

#-*- coding=utf8 -*-

# @author:sololi

# date: 2020/10/24

# 文件说明 :

# 123文件存放 用户信息 456 文件存放猜拳结果

import sys

fff= open('123',"r+",encoding="utf8")

shuju=[]

a=[]

b=[]

c=[]

aa={}

username=0

for line in fff.readlines():

line=line.strip('\n')

a= line.split(' ')

i=0

while i

b=a[i].split(',')

i+=1

j=0

while j

if b==" ":

break

c=b[j].split(':',1)

aa[c[0]]=c[1]

i+=1

j+=1

shuju.append(aa.copy()) #将数据 转换成列表字典形式便于后面登录与注册存放数据(copy是为了防止添加是数据类型不同出错)

fff.close()

print("#######################")

print("欢迎进入猜拳游戏")

print("#######################")

denglu=input("登录输入1,注册输入2") #登录程序

if denglu=="1" :

while True:

username = input("请输入用户名")

jg1= 0

i = 0

while(i

if (username == shuju[i]["用户名"]):

print("用户名正确")

jg1=1

break

i+=1

if(jg1!=1):

print("用户名错误")

elif (jg1 == 1):

break

while True:

password = input("请输入密码")

jg2=0

i = 0

while(i

if (password == shuju[i]["密码"]):

print("密码正确")

jg2=1

break

i+=1

if(jg2!=1):

print("密码错误")

elif(jg2==1):

break

elif denglu=="2" :

while True:

username = input("请输入注册的用户名")

jg3 = 0

i = 0

while (i < len(shuju)):

if (username == shuju[i]["用户名"]):

print("用户名已经存在")

jg3 = 1

break

i += 1

if(jg3 == 0):

password = input("请输入注册的密码")

print("注册成功")

print("登录成功")

fff = open("123", mode='a+', encoding="utf8")

fff.seek(2)

fff.write("用户名:{},密码:{}\n".format(username, password))

fff.close()

break

else:

print("输入有误,结束登录")

sys.exit(0)

while True: #猜拳游戏程序

xuanzhe = (input("进行游戏1\n显示信息2\n退出游戏3"))

if xuanzhe=="1":

z=0.0

c=0.0

import random

while True:

guess=random.randint(1,3)

num=int(input("选择石头(1)/剪刀(2)/布(3)"))

if (num==1 and guess==2) or (num==2 and guess==3) or (num==3 and guess==1):

print("胜")

c=c+1

elif num ==guess:

print("平")

elif(num==1 and guess==3) or (num==2 and guess==1) or (num==3 and guess==2):

print("负")

else:

print("输入有误")

continue

jieguo=input("是否继续游戏,输入任意退出游戏")

z = z + 1

if jieguo=="是":

continue

else: break

kd=((c/z))

print('总数{:.0f}' '胜率:{:.2%}'.format(z,kd))

f=open("456",mode='a+',encoding="utf8")

f.write("用户名:{},总数:{:.0f},胜率:{:.2%}\n".format(username,z, kd))

f.close()

elif xuanzhe=="2":

f = open("456","r+",encoding="utf8")

res = f.read()

print(res)

f.close()

elif xuanzhe=="3":

break

else:

print("输入有误请重新输入")

print("欢迎再次使用猜拳游戏")

初学者作品,有错大神请指正

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值