python代码实现猜拳小游戏


Posted in Python onNovember 30, 2020

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

游戏实现具体功能

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

python代码实现猜拳小游戏

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

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

格式如下:

python代码实现猜拳小游戏

具体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<len(a):
  b=a[i].split(',')
  i+=1

 j=0
 while j<len(b):
  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<len(shuju)):
    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<len(shuju)):
    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("欢迎再次使用猜拳游戏")

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

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

Python 相关文章推荐
python基础教程之缩进介绍
Aug 29 Python
Python中异常重试的解决方案详解
May 05 Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 Python
Numpy 改变数组维度的几种方法小结
Aug 02 Python
python实现将汉字保存成文本的方法
Nov 16 Python
Python 分享10个PyCharm技巧
Jul 13 Python
python3中替换python2中cmp函数的实现
Aug 20 Python
Windows10下 python3.7 安装 facenet的教程
Sep 10 Python
python中自带的三个装饰器的实现
Nov 08 Python
如何给Python代码进行加密
Jan 10 Python
Python-jenkins模块获取jobs的执行状态操作
May 12 Python
Python分类测试代码实例汇总
Jul 23 Python
Django 权限管理(permissions)与用户组(group)详解
Nov 30 #Python
python 如何引入协程和原理分析
Nov 30 #Python
Django缓存Cache使用详解
Nov 30 #Python
Django框架实现在线考试系统的示例代码
Nov 30 #Python
python爬虫 requests-html的使用
Nov 30 #Python
python实现登录与注册系统
Nov 30 #Python
python代码实现图书管理系统
Nov 30 #Python
You might like
浅谈Eclipse PDT调试PHP程序
2014/06/09 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
php中的异常和错误浅析
2017/05/03 PHP
浅谈Yii乐观锁的使用及原理
2017/07/25 PHP
PHP双向链表定义与用法示例
2018/01/31 PHP
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
2009/07/18 Javascript
jquery滚动到顶部底部代码
2015/04/20 Javascript
JavaScript基本语法讲解
2015/06/03 Javascript
javascript实现简单的分页特效
2015/08/12 Javascript
JavaScript对象数组排序函数及六个用法
2015/12/23 Javascript
微信小程序报错:this.setData is not a function的解决办法
2017/09/27 Javascript
使用Bootstrap + Vue.js实现表格的动态展示、新增和删除功能
2017/11/27 Javascript
详解Vue中数组和对象更改后视图不刷新的问题
2018/09/21 Javascript
Vue中用props给data赋初始值遇到的问题解决
2018/11/27 Javascript
JS实现压缩上传图片base64长度功能
2019/12/03 Javascript
JS实现前端路由功能示例【原生路由】
2020/05/29 Javascript
[14:19]2018年度COSER大赛-完美盛典
2018/12/16 DOTA
详解在Python和IPython中使用Docker
2015/04/28 Python
python文件操作相关知识点总结整理
2016/02/22 Python
Python求出0~100以内的所有素数
2018/01/23 Python
python实现在pandas.DataFrame添加一行
2018/04/04 Python
对python捕获ctrl+c手工中断程序的两种方法详解
2018/12/26 Python
django基于restframework的CBV封装详解
2019/08/08 Python
树莓派4B+opencv4+python 打开摄像头的实现方法
2019/10/18 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
Python Selenium异常处理的实例分析
2021/02/28 Python
无谷物狗粮:Pooch & Mutt
2018/05/23 全球购物
超级搞笑检讨书
2014/01/15 职场文书
2014高中生入党思想汇报范文
2014/09/13 职场文书
党的群众路线教育实践活动总结大会主持词
2014/10/30 职场文书
小学生思想品德评语
2014/12/31 职场文书
2016年寒假家长评语
2015/10/10 职场文书
2016校本研修培训心得体会
2016/01/08 职场文书
2019年工作总结范文
2019/05/21 职场文书
Python使用random模块实现掷骰子游戏的示例代码
2021/04/29 Python
如何用JavaScript学习算法复杂度
2021/04/30 Javascript