一、项目要求:

电脑随机出拳和用户猜拳三次。胜利条件如下:

(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编写猜拳代码的更多相关文章

  1. Hadoop:使用原生python编写MapReduce

    功能实现 功能:统计文本文件中所有单词出现的频率功能. 下面是要统计的文本文件 [/root/hadooptest/input.txt] foo foo quux labs foo bar quux ...

  2. 使用sublime编写python、php代码前的一些配置

    1.使用sublime编写python代码 打开sublime软件,Tools —> Build System —> New Build System,得到后缀名为“sublime-bui ...

  3. 25 【python入门指南】如何编写测试代码

    python如何编写测试代码 python内置了unittest,使得写应用层的单元测试变得超乎寻常的简单. 1,执行单个测试函数 #!/bin/python import unittest clas ...

  4. 利用Python编写Windows恶意代码!自娱自乐!勿用于非法用途!

    本文主要展示的是通过使用python和PyInstaller来构建恶意软件的一些poc. 利用Python编写Windows恶意代码!自娱自乐!勿用于非法用途!众所周知的,恶意软件如果影响到了他人的生 ...

  5. python的单元测试代码编写流程

    单元测试: 单元测试是对单独的代码块分别进行测试, 以确保它们的正确性, 单元测试主要还是由开发人员来做, 其余的集成测试和系统测试由专业的测试人员来做. python的单元测试代码编写主要记住以下几 ...

  6. Effective Python 编写高质量Python代码的59个有效方法

    Effective Python 编写高质量Python代码的59个有效方法

  7. 编写优美代码的七条规范(Python版)

    编程是一种与计算机系统通信的语言.交流就是与某人分享思想.二进制语言是计算机的最核心的语言.但是在前端,我们有很多种语言.这些语言使用解释器将前端代码转换为二进制代码.基本上,系统对一行代码执行大量内 ...

  8. 基于python编写的天气抓取程序

    以前一直使用中国天气网的天气预报组件都挺好,可是自从他们升级组件后数据加载变得非常不稳定,因为JS的阻塞常常导致网站打开速度很慢.为了解决这个问题决定现学现用python编写一个抓取程序,每天定时抓取 ...

  9. 用Python编写博客导出工具

    用Python编写博客导出工具 罗朝辉 (http://kesalin.github.io/) CC 许可,转载请注明出处   写在前面的话 我在 github 上用 octopress 搭建了个人博 ...

随机推荐

  1. ZOJ - 3781 Paint the Grid Reloaded 题解

    题目大意: 给一个n*m的X O构成的格子,对一个点操作可以使与它相连通的所有一样颜色的格子翻转颜色(X—>O或O—>X),问给定的矩阵最少操作多少次可以全部变成一样的颜色. 思路: 1. ...

  2. .NET 调用java webservice保存datetime类型数据为空的解决办法

    问题描述:       用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到 string类型的属性值,却不能得到i ...

  3. Codevs 2693 上学路线(施工)

    时间限制: 2 s 空间限制: 16000 KB 题目等级 : 黄金 Gold 题目描述 Description 问题描述 你所在的城市街道好像一个棋盘,有a条南北方向的街道和b条东西方向的街道. 南 ...

  4. Flex里监听mouseDownOutside事件解决弹出窗口点击空白关闭功能

    其实当用户在使用 PopUpManager 打开的某个组件外部单击时,会从该组件分派一个mouseDownOutside事件 监听该事件就能实现点击空白处关闭窗口的功能 this.addEventLi ...

  5. Knockout.js用jquery的val设置值不更新

    用如下方法,加上change() .val("blah").change()

  6. intelliJ IDEA工具快捷键

    F9            resume programe 恢复程序 Alt+F10        show execution point 显示执行断点 F8            Step Ove ...

  7. python统一的换行符,实现跨平台

    6 PEP 278: Universal Newline Support The three major operating systems used today are Microsoft Wind ...

  8. kvm虚拟化学习笔记(三)之windows kvm虚拟机安装

    KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...

  9. [转]图解eclipse 查看原始类出现The jar file rt.jar has no source attachment

    原文:http://blog.csdn.net/u011514810/article/details/53196371 ---------------------------------------- ...

  10. 微信小程序实战之 goods(订餐页)

    项目目录: 模拟数据: utils / data.js function getSData() { var data = [ { "name": "热销榜", ...