python实现石头剪刀布小游戏
作者:heimu24 发布时间:2022-03-22 15:47:36
标签:python,石头剪刀布
本文实例为大家分享了python实现石头剪刀布的具体代码,供大家参考,具体内容如下
老师布置了一个石头剪刀布的作业,要可视化,还是先用代码实现再说可视化的事。
环境:window7,Python 3.5
代码:
#coding=utf-8
import random
exit_flag = False #设置flag用于break跳出两层循环,或者自定义异常也行,try:, except。
dic = {}
dic[0] = '剪刀'
dic[1] = '石头'
dic[2] = '布'
while True:
humanStr = input("请输入[0:剪刀 1:石头 2:布] ")
if humanStr.isdigit() and (int(humanStr) in [0,1,2]): #如果输入的是数字,并且在0,1,2中
human = int(humanStr)
windows = random.randint(0, 2)
print ("你出的是%s,电脑出的是%s" % (dic[human],dic[windows]))
if (human == 0 and windows == 2) or (human == 1 and windows == 0) or (human == 2 and windows == 1):
print("祝贺你,你赢了!")
oncemore = input("你想再来一局吗? y(Y) or n(N) ")
elif human == windows:
print("平局")
oncemore = input("你想再来一局吗? y(Y) or n(N) ")
else:
print("不好意思,你输了")
oncemore = input("你想再来一局吗? y(Y) or n(N) ")
while True:
if oncemore == 'y' or oncemore == 'Y':
break
elif oncemore == 'n' or oncemore == 'N':
exit_flag = True
break #跳出内层循环,并且设置flag
else:
oncemore = input("你想再来一局吗? y(Y) or n(N) ")
if exit_flag == True:
break #跳出层循环,结束程序
else:
print ("请重新输入!")
pass
PS:这里想要记录一下python2中input和raw_input的区别,以及python3中的input
对于python2:
input和raw_input都能接受字符串, raw_input()将所有输入作为字符串看待,返回字符串类型,而input()在对待输入纯数字时,返回数字类型(int,float),对待字符串的话,输入的字符串必须使用引号引起来,表明是个字符串,返回类型为字符串
对于python3:
将raw_input()和input()进行了整合,去除了raw_input(),仅保留了input()函数,其接受任意性输入,将所有的输入都默认为字符串类型处理,并返回字符串类型。
来源:https://blog.csdn.net/heimu24/article/details/78577975
0
投稿
猜你喜欢
- 使用 pdb 进行调试pdb 是 python 自带的一个包,为 python 程序提供了一种交互的源代码调试功能,主要特性包括设置断点、单
- 实验环境:windows 7,anaconda 3(Python 3.5),tensorflow(gpu/cpu)函数介绍:标准化处理可以使
- 项目中要对短文本进行相似度估计,word2vec是一个很火的工具。本文就word2vec的训练以及加载进行了总结。word2vec的原理就不
- 现在的需求是:下拉框中要是选择加盟商让其继续选择学校,要是选择平台管理员则不需要选择学校。隐藏选择下拉列表。选择枚举值:/// <su
- 前言:MySQL 有很多存储引擎(也叫数据引擎),所谓的存储引擎是指用于存储、处理和保护数据的核心服务。也就是存储引擎是数据库的底层软件组织
- 一、如何理解本条内容:一个“简单”和“复杂”的例子在我和开发人员沟通一个项目需求的时候,他们频频慨叹Mockup的设计所考虑情况之细致,很多
- 本文实例为大家分享了Python实现打乒乓小游戏的具体代码,供大家参考,具体内容如下源码奉上:import sysimport cfgimp
- Python 文件处理注意事项总结文件处理在编程中是常见的操作,文件的打开,关闭,重命名,删除,追加,复制,随机读写非常容易理解和使用。需要
- 前言前段时间学习了python的多线程爬虫,当时爬取一个图片网站,开启多线程后,并没有限制线程的数量,也就是说,如果下载1000张图片,会一
- 返回被去除指定字符的字符串默认去除空白字符删除首尾字符:str.strip([char]) 删除首字符:str.lstrip([char])
- 笔者通过一周的时间,询问了许多设计人员真实用户,以便确保这六个方面确实是大多数用户所不喜并且有非常大的概率普遍存在于众多的医疗网站之中。那么
- 当我们在终端上(比如Goland)运行gin框架搭建的服务时,会发现输出的日志是可以带颜色的。比如下图中的最后一行,就是请求一个方法时的输出
- Blog的全名应该是Web log,中文意思是“网络日志”,后来缩写为Blog,而博客(Blogger)就是写Blog的人。从理解上讲,博客
- <% On Error Resume Next Const uploadPath = "/uploads/"
- 本文的目的是讨论Python中 __new__ 和 __ini___ 的用法。 __new__ 和 __init__ 的区别主要表现在:1.
- 如图,今天跑代码的事后遇到的问题,pycharm导入我自己写的各种函数.py文件时有红色标注,显示“no moudle balabala…”
- osc的rss不是全文输出的,不开心,所以就有了python抓取osc最新博客生成Rss# -*- coding: utf-8 -*-fro
- 一、if语句if 语句让你能够检查程序的当前状态,并据此采取相应的措施。if语句可应用于列表,以另一种方式处理列表中的大多数元素,以及特定值
- window.opener 的用法 window.opener 返回的是创建当前窗口的那个窗口的引用,比如点击了a.htm上的一
- 首先建一个access 数据库,库中有一个URLINDEX表,其中URL和Keywords字段分别添加了索引,如下:URL &nb