自己紹介
- Python独学歴2年目です(実務ではほぼ使っておりません)
- 普段の業務
- SQL
- PL/SQL
- BIツール
- Pythonを選んだ理由
- とある理由でWeb上からデータを取得したかった
- 比較的簡単
- 名前がかっこいい
本題
とりあえず資格いっとくかという勢いでPython基礎認定試験の勉強始めました(2024/09/02)
なんですが、2~3割くらい明確な答えがわからず正解or不正解しているのがあるので復習
ちゃちゃっと行きます。
徐算について
- Pythonでは「/」を使った除算は浮動小数点になる
addition = 2 + 5
subtraction = 7 - 5
multiplication = 2 * 5
division = 10 / 2
division2 = 10 // 2 # 「//」を使う
print(addition)
print(subtraction)
print(multiplication)
print(division)
print(division2)
# 結果
>>> 7
>>> 2
>>> 10
>>> 5.0 # 結果は整数だが、5.0となる
>>> 5
ドキュメンテーションコメントの出力
- __doc__属性に文字列として格納されてる
def hoge():
'''
これはテストです。
Arguments:
None
Return:
None
'''
print("Hello!!")
print(hoge.__doc__) # 必要に応じてtype(hoge.__doc__)でもいいかもね
>>> これはテストです。
>>> Arguments:
>>> None
>>> Return:
None
# こんなのもある
print(help(hoge))
>>> Help on function hoge in module __main__:
>>>
>>> hoge()
>>> これはテストです。
>>>
>>> Arguments:
>>> None
>>> Return:
>>> None
コマンドライン引数(argparseモジュール)
- sys.argvよりもいい感じのCLIを作成できる
parse.py
import argparse
parser = argparse.ArgumentParser() # インスタンス生成
parser.add_argument("arg1")
parser.add_argument("arg2", nargs="+") # こちらは引数を1以上必須とします
args = parser.parse_args()
print(args)
- 下記の様に実行
python parse.py 果物 りんご 梨
# 結果
Namespace(arg1='果物', arg2=['りんご', '梨'])
- 引数を正しく与えないパターン
python parse.py
# 結果
usage: parse.py [-h] arg1 arg2 [arg2 ...]
parse.py: error: the following arguments are required: arg1, arg2
- ほかにも色々できそうなので今度CLIツール作成する時に使ってみたい
randomモジュール
- random関数
import random
print(random.random()) # 0以上1未満のランダムなfloatを返す
# 例)0.23441577915211131
- choice関数
import random
print(random.choice(range(10))) # 引数に与えられた中から1つ文字列を返す
# 例)2
- uniform関数
import random
print(random.uniform(0, 10)) # 0以上10以下のfloatを返す
# 例)6.630403607319101
- randint関数
import random
print(random.randint(0, 10)) # 0以上10以下のintを返す
# 例)7
- sample関数
import random
# random.sample(a, b) aからb個重複なしで抽出
print(random.sample(range(0, 10), 3))
# 例)[2, 9, 4]
- randrange関数
import random
# randrange(a, [b], [c]) aからb未満のステップcでintを返す
print(random.randrange(0, 10, 2)) # 0から10未満の0を含めた2の倍数を返す
# 8