使用python实现拉钩网上的FizzBuzzWhizz问题示例
最近好多分享这个问题的代码,题目说的是用面向对象或者函数式编程,下面是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()

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

Pythonでは、文字列を介してオブジェクトを動的に作成し、そのメソッドを呼び出す方法は?これは一般的なプログラミング要件です。特に構成または実行する必要がある場合は...
