使用python實現(xiàn)拉鉤網(wǎng)上的FizzBuzzWhizz問題示例
最近好多分享這個問題的代碼,題目說的是用面向?qū)ο蠡蛘吆瘮?shù)式編程,下面是PYTHON的實現(xiàn)示例
#!/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()
相關(guān)文章
Python中使用 Selenium 實現(xiàn)網(wǎng)頁截圖實例
這篇文章主要介紹了Python中使用 Selenium 實現(xiàn)網(wǎng)頁截圖實例,Selenium支持Java、C#、Ruby 以及 Python等語言,本文以Python語言為例,需要的朋友可以參考下2014-07-07
Mysql分組查詢group by與with rollup方式
這篇文章主要介紹了Mysql分組查詢group by與with rollup方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
python爬蟲爬取淘寶商品比價(附淘寶反爬蟲機(jī)制解決小辦法)
這篇文章主要介紹了python爬蟲爬取淘寶商品比價(附淘寶反爬蟲機(jī)制解決小辦法),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12

