python实现石头剪刀布程序

yipeiwu_com5年前Python基础

本文实例为大家分享了python实现石头剪刀布的具体代码,供大家参考,具体内容如下

概述:

如果你和我一样是一个有着其他语言基础的编程者,那我想这个小程序对于你来说是小case。由于本人初学Python,就先拿这个熟悉熟悉一下语法,就不再是以前大家都爱用的Hello World了。

流程图:

代码如下:

import random
 
# define a function for get winner
# 1: Scissor
# 2: Stone
# 3: Cloth
def get_winner(you, me):
 if you == me:
  return 0
 
 if you == 1:
  if me == 2:
   return -1
  else:
   return 1
 
 if you == 2:
  if me == 1:
   return 1
  else:
   return -1
 
 if you == 3:
  if me == 2:
   return 1
  else:
   return -1
 
# define a function for get Label for finger
def get_lable(finger):
 if finger == 1:
  return "Scissor"
 elif finger == 2:
  return "Stone"
 else:
  return "Cloth"
 
you = raw_input("Your Finger is:")
while int(you) > 0:
 you = int(you) % 3
 
 if you == 0:
  you = 3
 
 me = random.randint(1, 3)
 print "your finger is %s and my finger is %s" % (get_lable(you), get_lable(me))
 
 result = get_winner(you, me)
 
 if result == -1:
  print "I Win."
 elif result == 1:
  print "You Win."
 else:
  print "No winner."
 
 you = raw_input("Your Finger is:")
 
print "END"

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题

解决在pycharm运行代码,调用CMD窗口的命令运行显示乱码问题

以下面的代码为例 import os os.system(“ping www.baidu.com”) 在pycharm界面运行后会显示乱码,如下图所示 网上很多无用的教程,说什么...

python 多进程通信模块的简单实现

多进程通信方法好多,不一而数。刚才试python封装好嘅多进程通信模块 multiprocessing.connection。 简单测试咗一下,效率还可以,应该系对socket封装,效率...

python实现文件快照加密保护的方法

本文实例讲述了python实现文件快照加密保护的方法。分享给大家供大家参考。具体如下: 这段代码可以对指定的目录进行扫描,包含子目录,对指定扩展名的文件进行SHA-1加密后存储在cvs文...

cProfile Python性能分析工具使用详解

cProfile Python性能分析工具使用详解

前言 Python自带了几个性能分析的模块:profile、cProfile和hotshot,使用方法基本都差不多,无非模块是纯Python还是用C写的。本文介绍cProfile。 例子...

Python 使用类写装饰器的小技巧

最近学到了一个有趣的装饰器写法,就记录一下。 装饰器是一个返回函数的函数。写一个装饰器,除了最常见的在函数中定义函数以外,Python还允许使用类来定义一个装饰器。 1、用类写装饰器 下...