簡單打印問題

1. 寫一個程序,打印數(shù)字1到100,3的倍數(shù)打印“Fizz”來替換這個數(shù),5的倍數(shù)打印“Buzz”,對于既是3的倍數(shù)又是5的倍數(shù)的數(shù)字打印“FizzBuzz”

for x in range(101):
    print("fizz"[x%3*4::]+"buzz"[x%5*4::]or x)
  • 解析:
    print后面分為兩部分,第一部分是”fizz”[x%3 * 4::]+”buzz”[x%5 * 4::],第二部分是x。兩部分使用邏輯或連接。如果第一部分為空,則最終結(jié)果為第二部分的結(jié)果。如果第一部分非空,則最終結(jié)果為第一部分。第一部分由兩個字符串連接而成,第一個字符串為”fizz”[x%3 * 4::],如果x是3的倍數(shù),則x%3=0,那么”fizz”[x%3 * 4::]=”fizz”[0::]=”fizz”;如果x不是3的倍數(shù),則x%3=1或2,那么”fizz”[x%3 * 4::]=”fizz”[4::]或”fizz”[8::]=”"。第二個字符串為”buzz”[x%5 * 4::],如果x是5的倍數(shù),那么”buzz”[x%5 * 4::]=”buzz”[0::]=”buzz”;如果x不是5的倍數(shù),那么x%5=1,2,3,4,那么”buzz”[x%5 * 4::]=”buzz”[4::]或”buzz”[8::]或”buzz”[12::]或”buzz”[16::]或”buzz”[20::]=”"。由此,如果x是3的倍數(shù),第一部分為”fizz”;如果x是5的倍數(shù),第一部分為”buzz”;如果x既是3的倍數(shù),又是5的倍數(shù),則第一部分為”buzzfizz”,如果既不是3的倍數(shù),也不是5的倍數(shù),則第一部分為”"。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容