使用python实现拉钩网上的FizzBuzzWhizz问题示例


Posted in Python onMay 05, 2014

最近好多分享这个问题的代码,题目说的是用面向对象或者函数式编程,下面是PYTHON的实现示例

#!/usr/bin/python
#encoding:utf8
'''
The Game of "FizzBuzzWhizz"
author : wang.jiankui89@gmail.com
mobile : 130-2199-5152
'''
import sys
class teacher:
    def __init__(self, student_num):
        self.student_num = student_num
    def gameStart(self, numList):
        for i in range (1, self.student_num + 1):
            stu = student(i) 
            print stu.answer(numList)
class student:
    def __init__(self, my_num):
        self.my_num = my_num
    def judgeMod(self, numList):
        modRes = ""
        for num in numList:
            if self.my_num % num == 0:
                modRes += rule[num]
        return modRes if modRes else self.my_num
    def judgeContain(self, first_num):
        conRes = ""
        if str(first_num) in str(self.my_num) :
            conRes = rule[first_num]
        return conRes
    def answer(self, numList):
        conRes = self.judgeContain(numList[0])
        return conRes if conRes else self.judgeMod(numList)
def getOps():
    '''parse options'''
    if len(sys.argv) != 4 :
        print "use as fizzBuzzWhizz.py [0-9] [0-9] [0-9]"
        sys.exit()
    else:
        first_num = int(sys.argv[1])
        second_num = int(sys.argv[2])
        third_num = int(sys.argv[3])
    return first_num, second_num, third_num 
def main():
    first_num, second_num, third_num = getOps()
    global rule 
    rule = {first_num:"Fizz", second_num:"Buzz", third_num:"Whizz"}
    student_num = 100
    tea = teacher(100)
    tea.gameStart( (first_num, second_num, third_num) )
if __name__ == "__main__":
    main()
Python 相关文章推荐
用python写asp详细讲解
Dec 16 Python
Python实现在线程里运行scrapy的方法
Apr 07 Python
详细探究Python中的字典容器
Apr 14 Python
Python版微信红包分配算法
May 04 Python
动感网页相册 python编写简单文件夹内图片浏览工具
Aug 17 Python
Python 爬虫之Beautiful Soup模块使用指南
Jul 05 Python
python 把列表转化为字符串的方法
Oct 23 Python
对Python生成器、装饰器、递归的使用详解
Jul 19 Python
Python学习笔记之函数的参数和返回值的使用
Nov 20 Python
python两个list[]相加的实现方法
Sep 23 Python
Python数据可视化常用4大绘图库原理详解
Oct 23 Python
Python排序算法之插入排序及其优化方案详解
Jun 11 Python
python通过scapy获取局域网所有主机mac地址示例
May 04 #Python
python使用内存zipfile对象在内存中打包文件示例
Apr 30 #Python
python数据结构之二叉树的统计与转换实例
Apr 29 #Python
python数据结构之二叉树的遍历实例
Apr 29 #Python
python数据结构之二叉树的建立实例
Apr 29 #Python
python数据结构树和二叉树简介
Apr 29 #Python
Python的ORM框架SQLAlchemy入门教程
Apr 28 #Python
You might like
Laravel框架用户登陆身份验证实现方法详解
2017/09/14 PHP
CI框架附属类用法分析
2018/12/26 PHP
function, new function, new Function之间的区别
2007/03/08 Javascript
jquery模拟按下回车实现代码
2011/09/20 Javascript
js定时调用方法成功后并停止调用示例
2014/04/08 Javascript
深入分析JSONP跨域的原理
2014/12/10 Javascript
javascript强制点击广告的方法
2015/02/06 Javascript
JQuery判断radio(单选框)是否选中和获取选中值方法总结
2015/04/15 Javascript
jQuery右侧选项卡焦点图片轮播特效代码分享
2015/09/05 Javascript
js带缩略图的图片轮播效果代码分享
2015/09/14 Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
2020/04/20 Javascript
jQuery验证插件validate使用方法详解
2020/09/13 Javascript
JavaScript浮点数及运算精度调整详解
2016/10/21 Javascript
Ionic + Angular.js实现验证码倒计时功能的方法
2017/06/12 Javascript
JS实现问卷星自动填问卷脚本并在两秒自动提交功能
2020/06/17 Javascript
使用Python操作MySQL的一些基本方法
2015/08/16 Python
Python 序列的方法总结
2016/10/18 Python
Python多线程原理与用法实例剖析
2019/01/22 Python
Python 绘制酷炫的三维图步骤详解
2019/07/12 Python
python实现连连看辅助之图像识别延伸
2019/07/17 Python
Django 源码WSGI剖析过程详解
2019/08/05 Python
python上传时包含boundary时的解决方法
2020/04/08 Python
五分钟学会怎么用python做一个简单的贪吃蛇
2021/01/12 Python
Python tkinter之ComboBox(下拉框)的使用简介
2021/02/05 Python
CSS3 text shadow字体阴影效果
2016/01/08 HTML / CSS
美国新蛋IT数码商城:Newegg.com
2016/07/21 全球购物
美国时尚女装在线:Missguided
2016/12/03 全球购物
nohup的用法
2014/08/10 面试题
12月小学生校园广播稿
2014/02/04 职场文书
英文请假条
2014/04/11 职场文书
小学安全工作汇报材料
2014/08/19 职场文书
三八妇女节趣味活动方案
2014/08/23 职场文书
写给女朋友的保证书
2015/05/09 职场文书
当幸福来敲门观后感
2015/06/01 职场文书
工程进度款催款函
2015/06/24 职场文书
python绘制箱型图
2021/04/27 Python