python编写猜拳代码
一、项目要求:
电脑随机出拳和用户猜拳三次。胜利条件如下:
(1)(石头 胜 剪刀)
(2)(剪刀 胜 布)
(3)(布 胜 石头)
二、代码
#!/usr/bin/env python
# -*- coding: UTF-8 -*- # 项目一:
# 1、要求:电脑随机出拳和用户猜拳三次。胜利条件如下:
# (1)(石头 胜 剪刀)
# (2)(剪刀 胜 布)
# (3)(布 胜 石头) # 2、分析:
# 用户胜利的条件:
# (1)以上三点只需要满足其中一任意一条即判定用户胜利,
# 所以以上三点是“或”的关系
# (2)在每一个条件中,用户如果要赢电脑就必须满足每一个胜利条件中的条件,
# 所以每一个胜利的条件是“且”的关系 # 3、代码
import random count = 0
while True: if count == 3:
print("猜拳结束")
break
# 1、用户出拳
user_mora = input("提示——【1】石头,【2】剪刀,【3】布。请出拳:")
# 判断用户输入的是否为数字
if user_mora.isdecimal():
user_mora = int(user_mora)
else:
print("非法输入")
continue # 2、电脑出拳
computer_mora = random.randint(1,3)
print("电脑出的拳是:%d" % computer_mora) # 3、判断
# 条件
condition = (user_mora == 1 and computer_mora == 2)\
or(user_mora == 2 and computer_mora == 3)\
or(user_mora == 3 and computer_mora == 1)
# 3.1 用户正确的条件
if condition:
print("玩家胜!")
# 3.2 平局的条件
elif user_mora == computer_mora:
print("平局!")
# 3.3 电脑胜利的条件,只要是除去以上两种情况,剩下的都判定电脑胜利
else:
print("电脑胜!") # 提示次数
print("你还有%s次机会" % (2 - count)) count += 1
二、图示
python编写猜拳代码的更多相关文章
- Hadoop:使用原生python编写MapReduce
功能实现 功能:统计文本文件中所有单词出现的频率功能. 下面是要统计的文本文件 [/root/hadooptest/input.txt] foo foo quux labs foo bar quux ...
- 使用sublime编写python、php代码前的一些配置
1.使用sublime编写python代码 打开sublime软件,Tools —> Build System —> New Build System,得到后缀名为“sublime-bui ...
- 25 【python入门指南】如何编写测试代码
python如何编写测试代码 python内置了unittest,使得写应用层的单元测试变得超乎寻常的简单. 1,执行单个测试函数 #!/bin/python import unittest clas ...
- 利用Python编写Windows恶意代码!自娱自乐!勿用于非法用途!
本文主要展示的是通过使用python和PyInstaller来构建恶意软件的一些poc. 利用Python编写Windows恶意代码!自娱自乐!勿用于非法用途!众所周知的,恶意软件如果影响到了他人的生 ...
- python的单元测试代码编写流程
单元测试: 单元测试是对单独的代码块分别进行测试, 以确保它们的正确性, 单元测试主要还是由开发人员来做, 其余的集成测试和系统测试由专业的测试人员来做. python的单元测试代码编写主要记住以下几 ...
- Effective Python 编写高质量Python代码的59个有效方法
Effective Python 编写高质量Python代码的59个有效方法
- 编写优美代码的七条规范(Python版)
编程是一种与计算机系统通信的语言.交流就是与某人分享思想.二进制语言是计算机的最核心的语言.但是在前端,我们有很多种语言.这些语言使用解释器将前端代码转换为二进制代码.基本上,系统对一行代码执行大量内 ...
- 基于python编写的天气抓取程序
以前一直使用中国天气网的天气预报组件都挺好,可是自从他们升级组件后数据加载变得非常不稳定,因为JS的阻塞常常导致网站打开速度很慢.为了解决这个问题决定现学现用python编写一个抓取程序,每天定时抓取 ...
- 用Python编写博客导出工具
用Python编写博客导出工具 罗朝辉 (http://kesalin.github.io/) CC 许可,转载请注明出处 写在前面的话 我在 github 上用 octopress 搭建了个人博 ...
随机推荐
- ZOJ - 3781 Paint the Grid Reloaded 题解
题目大意: 给一个n*m的X O构成的格子,对一个点操作可以使与它相连通的所有一样颜色的格子翻转颜色(X—>O或O—>X),问给定的矩阵最少操作多少次可以全部变成一样的颜色. 思路: 1. ...
- .NET 调用java webservice保存datetime类型数据为空的解决办法
问题描述: 用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到 string类型的属性值,却不能得到i ...
- Codevs 2693 上学路线(施工)
时间限制: 2 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 问题描述 你所在的城市街道好像一个棋盘,有a条南北方向的街道和b条东西方向的街道. 南 ...
- Flex里监听mouseDownOutside事件解决弹出窗口点击空白关闭功能
其实当用户在使用 PopUpManager 打开的某个组件外部单击时,会从该组件分派一个mouseDownOutside事件 监听该事件就能实现点击空白处关闭窗口的功能 this.addEventLi ...
- Knockout.js用jquery的val设置值不更新
用如下方法,加上change() .val("blah").change()
- intelliJ IDEA工具快捷键
F9 resume programe 恢复程序 Alt+F10 show execution point 显示执行断点 F8 Step Ove ...
- python统一的换行符,实现跨平台
6 PEP 278: Universal Newline Support The three major operating systems used today are Microsoft Wind ...
- kvm虚拟化学习笔记(三)之windows kvm虚拟机安装
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- [转]图解eclipse 查看原始类出现The jar file rt.jar has no source attachment
原文:http://blog.csdn.net/u011514810/article/details/53196371 ---------------------------------------- ...
- 微信小程序实战之 goods(订餐页)
项目目录: 模拟数据: utils / data.js function getSData() { var data = [ { "name": "热销榜", ...