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 executemany的使用及注意事项
Mar 13 Python
Python实现的爬虫功能代码
Jun 24 Python
flask中使用蓝图将路由分开写在不同文件实例解析
Jan 19 Python
python 获取毫秒数,计算调用时长的方法
Feb 20 Python
python实现从本地摄像头和网络摄像头截取图片功能
Jul 11 Python
django使用xadmin的全局配置详解
Nov 15 Python
Pytorch使用MNIST数据集实现CGAN和生成指定的数字方式
Jan 10 Python
python统计文章中单词出现次数实例
Feb 27 Python
基于FME使用Python过程图解
May 13 Python
Python flask框架实现查询数据库并显示数据
Jun 04 Python
python中get和post有什么区别
Jun 19 Python
什么是python的必选参数
Jun 21 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
PHP实现分页的一个示例
2006/10/09 PHP
用PHP写的MySQL数据库用户认证系统代码
2007/03/22 PHP
一段php加密解密的代码
2007/07/16 PHP
Laravel向公共模板赋值方法总结
2019/06/25 PHP
JavaScript 组件之旅(三):用 Ant 构建组件
2009/10/28 Javascript
JavaScript 判断指定字符串是否为有效数字
2010/05/11 Javascript
JavaScript入门之对象与JSON详解
2011/10/21 Javascript
js select option对象小结
2013/12/20 Javascript
jQuery 文本框得失焦点的简单实例
2014/02/19 Javascript
jQuery实现图片文字淡入淡出效果
2015/12/21 Javascript
KnockoutJs快速入门教程
2016/05/16 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
2016/07/27 Javascript
解决Angular.Js与Django标签冲突的方案
2016/12/20 Javascript
详解javascript表单的Ajax提交插件的使用
2016/12/29 Javascript
webpack处理 css\less\sass 样式的方法
2017/08/21 Javascript
微信小程序项目实践之验证码倒计时功能
2018/07/18 Javascript
基于vue开发微信小程序mpvue-docs跳转页面功能
2019/04/10 Javascript
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
JavaScript实现多文件下载方法解析
2020/08/07 Javascript
python使用新浪微博api上传图片到微博示例
2014/01/10 Python
解决python 无法加载downsample模型的问题
2018/10/25 Python
flask 实现token机制的示例代码
2019/11/07 Python
python中pickle模块浅析
2020/12/29 Python
详解python第三方库的安装、PyInstaller库、random库
2021/03/03 Python
实现CSS3中的border-radius(边框圆角)示例代码
2013/07/19 HTML / CSS
Python里面search()和match()的区别
2016/09/21 面试题
机械设计及其自动化专业推荐信
2013/10/31 职场文书
房屋转让协议书范本
2014/04/11 职场文书
购房协议书
2014/04/11 职场文书
党委书记群众路线对照检查材料思想汇报
2014/10/04 职场文书
贪污受贿检讨书范文
2014/11/19 职场文书
2014财务部年度工作总结
2014/12/08 职场文书
时尚女魔头观后感
2015/06/04 职场文书
教师读书笔记
2015/06/29 职场文书
python编写函数注意事项总结
2021/03/29 Python
python中pd.cut()与pd.qcut()的对比及示例
2022/06/16 Python