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 相关文章推荐
Python2/3中urllib库的一些常见用法
Dec 19 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
pandas按若干个列的组合条件筛选数据的方法
Apr 11 Python
python matlibplot绘制3D图形
Jul 02 Python
python flask解析json数据不完整的解决方法
May 26 Python
Django中信号signals的简单使用方法
Jul 04 Python
python re.sub()替换正则的匹配内容方法
Jul 22 Python
python随机生成库faker库api实例详解
Nov 28 Python
使用 prometheus python 库编写自定义指标的方法(完整代码)
Jun 29 Python
详解Pandas 处理缺失值指令大全
Jul 30 Python
jupyter notebook远程访问不了的问题解决方法
Jan 11 Python
django中websocket的具体使用
Jan 22 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
5.PHP的其他功能
2006/10/09 PHP
php中常见的sql攻击正则表达式汇总
2014/11/06 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
2016/07/07 PHP
PHP云打印类完整示例
2016/10/15 PHP
微信接口生成带参数的二维码
2017/07/31 PHP
showModelessDialog()使用详解
2006/09/21 Javascript
innerHTML 和 getElementsByName 在IE下面的bug 的解决
2010/04/09 Javascript
js 复制或插入Html的实现方法小结
2010/05/19 Javascript
JavaScript 设计模式 富有表现力的Javascript(一)
2010/05/26 Javascript
浏览器加载、渲染和解析过程黑箱简析
2012/11/29 Javascript
jquery中prop()方法和attr()方法的区别浅析
2013/09/06 Javascript
JavaScript将数据转换成整数的方法
2014/01/04 Javascript
js实现二代身份证号码验证详解
2014/11/20 Javascript
Angularjs编写KindEditor,UEidtor,jQuery指令
2015/01/28 Javascript
解决微信二次分享不显示摘要和图片的问题
2017/08/18 Javascript
Windows下使用Nodejs运行js的方法
2017/09/02 NodeJs
微信 jssdk 签名错误invalid signature的解决方法
2019/01/14 Javascript
js 计算图片内点个数的示例代码
2019/04/04 Javascript
Layui 导航默认展开和菜单栏选中高亮设置的方法
2019/09/04 Javascript
vue+element搭建后台小总结 el-dropdown下拉功能
2020/04/10 Javascript
python清除字符串里非数字字符的方法
2015/07/02 Python
Python部署web开发程序的几种方法
2017/05/05 Python
Python中enumerate()函数编写更Pythonic的循环
2018/03/06 Python
python使用Matplotlib画饼图
2018/09/25 Python
Django 实现前端图片压缩功能的方法
2019/08/07 Python
pytorch 指定gpu训练与多gpu并行训练示例
2019/12/31 Python
使用Keras预训练模型ResNet50进行图像分类方式
2020/05/23 Python
Python如何使用ElementTree解析xml
2020/10/12 Python
Matplotlib中rcParams使用方法
2021/01/05 Python
基于CSS3实现的几个小loading效果
2018/09/27 HTML / CSS
美国内衣第一品牌:Hanes(恒适)
2016/07/29 全球购物
JACK & JONES瑞典官方网站:杰克琼斯欧式风格男装
2017/12/23 全球购物
综治宣传月活动总结
2014/04/28 职场文书
开学典礼演讲稿
2014/05/23 职场文书
小学教师教育随笔
2015/08/14 职场文书
2016年全国助残日活动总结
2016/04/01 职场文书