Python(基本)Hackerrankコード説明(1)


1号FizzzBuzz問題

  • パラメータnが与えられると
  • となる.
    出力
  • 1~nの数字、
  • 3の倍数であればfizz
  • 5の倍数であれば、
  • です.
  • 3と5の倍数であればfizzbuzz
  • 以外は、数字をプリントアウト!
  • import math
    import os
    import random
    import re
    import sys
    
    def fizzBuzz(n):
        for number in range(1, n+1):
            if number % 3 == 0 and number % 5 == 0:
                print('FizzBuzz')
            elif number % 3 == 0:
                print('Fizz')
            elif number % 5 == 0:
                print('Buzz')
            else:
                print(number)
    
    if __name__ == '__main__':
        n = int(input().strip())
    
        fizzBuzz(n)
    fizzbuzz関数の説明
  • nのパラメータを受け入れると
  • range関数を用いて1からn出力
  • に出力する必要がある.
  • の連絡先はin range(1,n+1)
  • を含む.
  • if/elif/elseドアから
  • 3と5は同時にfizzbuzz出力倍数、
  • である.
  • 下端のelifゲートは3と5の倍数をfizz、buzzで出力させます!
  • 最後のelse文は3と5の倍数ではなく数字を出力します!
  • if name == 'main':
  • 主関数ゲート
  • 入力関数は
  • n,
  • である.
  • より古いfizzbuzz関数に入れます!
  • 主関数ゲート?!

  • 今日の主なハイライト!
  • if name==「main」は、主関数の宣言、開始を意味します...
  • でもそれは遠いですよね?
  • # multi.py
    
    def multi(x, y):
    	return x*y
    	
    print (multi(3, 4))
    以上のように多い.pyというPythonコードがあるとします
  • python multi.pyはもちろん12の結果値を印刷します!
  • だけどいくつもpyを関数としてロードしたら~!

    import multi
    >>> 7
    別のPythonファイルでは、multiというPythonファイルをモジュールとしてロードします.
  • 7という値が印刷されます.
  • 乗算モジュールのみを書くと
  • モジュール導入時に7という数字が出てくると混同する可能性があります.
  • どうやって交換しますか?

    # multi.py
    
    def multi(x, y):
    	return x*y
    
    if __name__ == '__main__'
    	print (multi(3, 4))
    上記のように複数に変更します.pyファイル自体を実行すると、
    print関数が出力されます.
    他のファイルからインポートする場合、複数のモジュールのname
    複数の変更のためprint関数は実行できません!
    [終了]