- 1 1. ã¯ããã«
- 2 2. Pythonã®input()é¢æ°ã®åºæ¬çãªäœ¿ãæ¹ãåå¿è åãã
- 3 3. Pythonã§è€æ°ã®å ¥åãåãåãæ¹æ³ãsplit/ã«ãŒã掻çšã
- 4 4. å ¥åæã®ãšã©ãŒãã³ããªã³ã°ãtry-exceptã®æŽ»çšã
- 5 5. å¿çšç·š: é«åºŠãªå ¥ååŠç
- 6 6. Python 2ãšã®äºææ§ïŒè£è¶³æ å ±ïŒ
- 7 7. ãŸãšã
1. ã¯ããã«
Pythonã¯ãã·ã³ãã«ãªææ³ãšåŒ·åãªæ©èœãå Œãåããããã°ã©ãã³ã°èšèªã§ãããåå¿è ããäžçŽè ãŸã§å¹ åºãéçºè ã«å©çšãããŠããŸããç¹ã«ããŠãŒã¶ãŒããã®å ¥åãåãåãæ©èœã¯ã察話åã®ããã°ã©ã ãäœæããéã«æ¬ ãããŸããã
æ¬èšäºã§ã¯ãPythonã§ãŠãŒã¶ãŒå
¥åãåãåãæ¹æ³ã詳ãã解説ããŸããinput()
é¢æ°ã®åºæ¬çãªäœ¿ãæ¹ãããæ°å€å€æãè€æ°ã®å
¥ååŠçããšã©ãŒãã³ããªã³ã°ãé«åºŠãªå
¥ååŠçãŸã§ã網çŸ
ããåå¿è
ããäžçŽè
ãŸã§ã®èªè
ãç解ããããããã«æ§æããŠããŸãã
ãã®èšäºãèªãããšã§ã以äžã®å 容ã身ã«ã€ããŸãïŒ
- Pythonã®
input()
é¢æ°ã®åºæ¬çãªäœ¿ãæ¹ - æååå ¥åãšæ°å€å€æã®æ¹æ³
- è€æ°ã®å€ãåãåãæ¹æ³
- å ¥åæã®ãšã©ãŒåŠçïŒtry-exceptïŒ
- é«åºŠãªå ¥ååŠçïŒãã¡ã€ã«å ¥åãã³ãã³ãã©ã€ã³åŒæ°ããã¹ã¯ãŒãå ¥åïŒ
Pythonã®ãŠãŒã¶ãŒå ¥åã®ä»çµã¿ããã£ãããšç解ããå®è·µçãªããã°ã©ã ãäœæã§ããããã«ãªããŸãããïŒ
2. Pythonã®input()
é¢æ°ã®åºæ¬çãªäœ¿ãæ¹ãåå¿è
åãã
Pythonã§ãŠãŒã¶ãŒããå
¥åãåãåãæ¹æ³ãšããŠãæãåºæ¬çãªé¢æ°ãinput()
ã§ãããã®é¢æ°ã䜿ãããšã§ãããã°ã©ã å®è¡äžã«ãŠãŒã¶ãŒãå
¥åããããŒã¿ãååŸããå€æ°ã«æ ŒçŽããããšãã§ããŸãã
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãinput()
é¢æ°ã®åºæ¬çãªåäœãšãæååããã³æ°å€ãæ±ãæ¹æ³ã«ã€ããŠè§£èª¬ããŸãã
2.1 input()
é¢æ°ã®åºæ¬çãªäœ¿ãæ¹
input()
é¢æ°ã䜿ããšãã³ã³ãœãŒã«ïŒã¿ãŒããã«ïŒäžã§ãŠãŒã¶ãŒã«ã¡ãã»ãŒãžã衚瀺ããå
¥åãåãåãããšãã§ããŸãã以äžãæãã·ã³ãã«ãªinput()
ã®äœ¿çšäŸã§ãã
name = input("ããªãã®ååãå
¥åããŠãã ãã: ")
print(f"ããã«ã¡ã¯ã{name}ããïŒ")
å®è¡çµæã®äŸ
ããªãã®ååãå
¥åããŠãã ãã: 倪é
ããã«ã¡ã¯ã倪éããïŒ
åäœã®ä»çµã¿
input("ããªãã®ååãå ¥åããŠãã ãã: ")
ãå®è¡ããããšããŠãŒã¶ãŒãå ¥åãããŸã§ããã°ã©ã ãäžæåæ¢ããŸãã- ãŠãŒã¶ãŒãå
¥åããEnterããŒãæŒããšããã®å€ãæååïŒstråïŒãšããŠå€æ°
name
ã«æ ŒçŽãããŸãã print()
é¢æ°ã䜿ã£ãŠãå ¥åå 容ãç»é¢ã«è¡šç€ºã§ããŸãã
2.2 input()
ã§æ°å€ãåãåãæ¹æ³ïŒåå€æïŒ
input()
é¢æ°ã§ååŸããããŒã¿ã¯ãåžžã«æååïŒstråïŒã«ãªããŸããããšãã°ãæ°å€ãå
¥åããŠãããã®ãŸãŸã§ã¯æååãšããŠæ±ãããŸãã
äŸïŒæ°å€ããã®ãŸãŸå ¥åããŠã¿ã
age = input("幎霢ãå
¥åããŠãã ãã: ")
print(type(age)) # strïŒæååïŒåã«ãªã
å®è¡çµæ
幎霢ãå
¥åããŠãã ãã: 25
<class 'str'>
äžèšã®äŸã§ã¯ãinput()
ã«ãã£ãŠååŸããage
㯠“25”ïŒstråã®æååïŒ ãšãªã£ãŠãããæ°å€ã§ã¯ãããŸããã
æ°å€ãšããŠæ±ãããå Žåã¯ãåå€æãè¡ãå¿ èŠããããŸãã
æŽæ°ïŒintåïŒãžã®å€æ
æŽæ°ãšããŠå
¥åãåãåãå Žåãint()
é¢æ°ã䜿çšããŸãã
age = int(input("幎霢ãå
¥åããŠãã ãã: "))
print(f"ããªãã¯{age}æ³ã§ãã")
å®è¡çµæ
幎霢ãå
¥åããŠãã ãã: 25
ããªãã¯25æ³ã§ãã
int()
ã䜿ãããšã§ããŠãŒã¶ãŒã®å
¥åå€ãæŽæ°åïŒintïŒãšããŠæ±ãããŸãã
å°æ°ïŒfloatåïŒãžã®å€æ
å°æ°ãå
¥åããå Žåã¯ãfloat()
é¢æ°ã䜿ããŸãã
height = float(input("身é·ãå
¥åããŠãã ããïŒcmïŒ: "))
print(f"ããªãã®èº«é·ã¯{height}cmã§ãã")
å®è¡çµæ
身é·ãå
¥åããŠãã ããïŒcmïŒ: 170.5
ããªãã®èº«é·ã¯170.5cmã§ãã
float()
ã䜿çšãããšãå°æ°ç¹ãå«ãæ°å€ãé©åã«åŠçã§ããŸãã
2.3 input()
ã®æ³šæç¹ãšãšã©ãŒã®çºç
int()
ãfloat()
ã䜿ã£ãŠåå€æããéããŠãŒã¶ãŒãæ°å€ä»¥å€ã®ããŒã¿ãå
¥åãããšãšã©ãŒãçºçããŸãã
ãšã©ãŒãçºçããäŸ
age = int(input("幎霢ãå
¥åããŠãã ãã: "))
幎霢ãå
¥åããŠãã ãã: abc
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'abc'
ValueError
ãšãããšã©ãŒãçºçããããã°ã©ã ãã¯ã©ãã·ã¥ããŠããŸããŸãã
ãã®åé¡ãé²ãããã«ã¯ããšã©ãŒãã³ããªã³ã°ïŒäŸå€åŠçïŒãå®è£
ããå¿
èŠããããŸãããšã©ãŒãã³ããªã³ã°ã«ã€ããŠã¯åŸã®ã»ã¯ã·ã§ã³ã§è©³ãã解説ããŸãã
2.4 ãŸãšã
input()
é¢æ°ã¯ããŠãŒã¶ãŒããã®å ¥åãååŸããããã®åºæ¬çãªé¢æ°ãinput()
ã§ååŸããããŒã¿ã¯ãåžžã«æååïŒstråïŒãšããŠæ±ãããã- æ°å€ãå
¥åãããå Žåã¯ã
int()
ãfloat()
ã䜿ã£ãŠåå€æãè¡ãã int()
ãfloat()
ã䜿ãéã¯ãèª€å ¥åã«æ³šæãããšã©ãŒãã³ããªã³ã°ãå®è£ ããã®ãæãŸããã
3. Pythonã§è€æ°ã®å ¥åãåãåãæ¹æ³ãsplit/ã«ãŒã掻çšã
Pythonã§ã¯ã1åã®å
¥åã§è€æ°ã®å€ãåãåãããšãå¯èœã§ããç¹ã«ããªã¹ã圢åŒã§ããŒã¿ãååŸããããç¹°ãè¿ãå
¥åãåãåãéã«äŸ¿å©ãªæ¹æ³ããããŸããæ¬ã»ã¯ã·ã§ã³ã§ã¯ãsplit()
ã䜿ã£ãæ¹æ³ãšãã«ãŒããå©çšããè€æ°è¡å
¥åã®æ¹æ³ã«ã€ããŠè§£èª¬ããŸãã
3.1 split()
ã䜿ã£ãŠ1è¡ã§è€æ°ã®å€ãå
¥åããæ¹æ³
éåžžãinput()
ã§ãŠãŒã¶ãŒããã®å
¥åãåãåããšãããã¯1ã€ã®æååãšããŠæ±ãããŸããããããsplit()
ãå©çšãããšãã¹ããŒã¹åºåãã§è€æ°ã®å€ãååŸãããªã¹ããšããŠåŠçããããšãå¯èœã«ãªããŸãã
åºæ¬çãªäœ¿çšäŸ
values = input("ã¹ããŒã¹ã§åºåã£ãŠè€æ°ã®å€ãå
¥åããŠãã ãã: ").split()
print("å
¥åãããå€:", values)
å®è¡äŸ
ã¹ããŒã¹ã§åºåã£ãŠè€æ°ã®å€ãå
¥åããŠãã ãã: 10 20 30 40
å
¥åãããå€: ['10', '20', '30', '40']
åäœã®ä»çµã¿
input()
ã«ãã£ãŠããŠãŒã¶ãŒãå ¥åããæååãååŸã.split()
ã䜿ãããšã§ãã¹ããŒã¹ïŒããã©ã«ãïŒã§åºåã£ãŠãªã¹ãã«å€æã- ãã®çµæããªã¹ããšããŠå€ãæ ŒçŽãããã
ãã®æ¹æ³ã䜿ãã°ããŠãŒã¶ãŒããå¯å€é·ã®ããŒã¿ãåãåãããšãã§ããŸãã
3.2 split()
ãšåå€æãçµã¿åããã
åè¿°ã®æ¹æ³ã§ã¯ãå ¥åãããå€ã¯ãã¹ãŠæååïŒstråïŒã«ãªã£ãŠããŸããæ°å€ãšããŠåŠçãããå Žåã¯ããªã¹ãå ã®åèŠçŽ ãé©åãªåã«å€æããå¿ èŠããããŸãã
äŸïŒæ°å€ãšããŠåŠç
numbers = list(map(int, input("ã¹ããŒã¹ã§åºåã£ãŠæŽæ°ãå
¥åããŠãã ãã: ").split()))
print("æŽæ°ã®åèš:", sum(numbers))
å®è¡äŸ
ã¹ããŒã¹ã§åºåã£ãŠæŽæ°ãå
¥åããŠãã ãã: 5 10 15 20
æŽæ°ã®åèš: 50
解説
input().split()
ã§ãªã¹ãåããåŸãmap(int, ...)
ã䜿ã£ãŠåèŠçŽ ãæŽæ°ïŒintåïŒã«å€æãlist()
ã§map
ã®çµæããªã¹ãåãsum()
é¢æ°ã䜿ã£ãŠåèšãèšç®ã
ãã®æ¹æ³ã¯ãè€æ°ã®æ°å€ãäžæ¬ã§åŠçããå Žåã«éåžžã«äŸ¿å©ã§ãã
3.3 while
ã«ãŒãã䜿ã£ãŠè€æ°è¡ã®å
¥åãåãåã
split()
ã䜿ãæ¹æ³ã§ã¯ã1è¡ã®å
¥åã®ã¿ãåŠçããŸãããããããŠãŒã¶ãŒã«è€æ°è¡ã®ããŒã¿ãå
¥åããããå Žåãwhile
ã«ãŒãã䜿çšãããšæè»ã«å¯Ÿå¿ã§ããŸãã
è€æ°è¡ã®å ¥åãåãåãæ¹æ³
lines = []
print("ããŒã¿ãå
¥åããŠãã ããïŒçµäºããã«ã¯ç©ºè¡ãå
¥åïŒ:")
while True:
line = input()
if line == "": # 空è¡ãå
¥åããããçµäº
break
lines.append(line)
print("å
¥åãããããŒã¿:", lines)
å®è¡äŸ
ããŒã¿ãå
¥åããŠãã ããïŒçµäºããã«ã¯ç©ºè¡ãå
¥åïŒ:
ããã
ããã
ãªã¬ã³ãž
å
¥åãããããŒã¿: ['ããã', 'ããã', 'ãªã¬ã³ãž']
解説
while True
ã䜿ããç¡éã«ãŒããäœæã- ãŠãŒã¶ãŒã
input()
ã§å€ãå ¥åã - 空è¡ïŒ
""
ïŒãå ¥åããããšbreak
ããŠã«ãŒãçµäºã - ãã¹ãŠã®å
¥åã
lines
ãªã¹ãã«æ ŒçŽã
ãã®æ¹æ³ã䜿ãã°ããŠãŒã¶ãŒãèªç±ãªæ°ã®ããŒã¿ãå ¥åã§ããããã«ãªããŸãã
3.4 for
ã«ãŒãã䜿ã£ãŠæ±ºãŸã£ãåæ°ã ãå
¥åãåãåã
ç¹å®ã®åæ°ã ãå
¥åãåãåãå Žåã¯ãfor
ã«ãŒãã䜿ãã®ã䟿å©ã§ãã
äŸïŒ3åã®å ¥åãåãåã
data = []
for i in range(3):
value = input(f"{i+1}åç®ã®å
¥å: ")
data.append(value)
print("å
¥åãããããŒã¿:", data)
å®è¡äŸ
1åç®ã®å
¥å: Python
2åç®ã®å
¥å: Java
3åç®ã®å
¥å: C++
å
¥åãããããŒã¿: ['Python', 'Java', 'C++']
ãã€ã³ã
for
ã«ãŒãã䜿ãããšã§ãå ¥ååæ°ãæ確ã«æå®ã§ãããf"{i+1}åç®ã®å ¥å"
ã®ããã«ãå ¥ååæ°ã衚瀺ãããšããŠãŒã¶ãŒãããããããã
3.5 ãŸãšã
æ¹æ³ | 説æ | ã¡ãªãã |
---|---|---|
split() ãäœ¿çš | 1è¡ã®å ¥åããªã¹ãå | è€æ°ã®å€ãç°¡åã«åãåãã |
split() + åå€æ | æ°å€å ¥åããªã¹ãå | æ°å€åŠçãç°¡åã«ãªã |
while ã«ãŒã | è€æ°è¡ã®å ¥åãåãåã | å ¥åæ°ãèªç±ã«èšå®å¯èœ |
for ã«ãŒã | 決ãŸã£ãåæ°ã®å ¥åãåãåã | ç¹°ãè¿ãåæ°ãæ確ã«å¶åŸ¡ |

4. å ¥åæã®ãšã©ãŒãã³ããªã³ã°ãtry-exceptã®æŽ»çšã
Pythonã§ãŠãŒã¶ãŒããã®å
¥åãåãåãéãæ³å®ããªãå€ãå
¥åãããããšããããŸããäŸãã°ãæ°å€ãæ±ããŠããã®ã«æååãå
¥åãããå Žåãããã°ã©ã ããšã©ãŒãèµ·ãããŠåæ¢ããŠããŸããŸãããããé²ãããã«ãtry-except
ã䜿ã£ããšã©ãŒãã³ããªã³ã°ãå®è£
ããããšãéèŠã§ãã
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãtry-except
ã®åºæ¬çãªäœ¿ãæ¹ãšãå®çšçãªãšã©ãŒãã³ããªã³ã°ã®æ¹æ³ã«ã€ããŠè§£èª¬ããŸãã
4.1 try-except
ã®åºæ¬çãªäœ¿ãæ¹
Pythonã§ã¯ãtry-except
ã䜿ãããšã§ããšã©ãŒïŒäŸå€ïŒãçºçãããšãã«ããã°ã©ã ãé©åã«åŠçããããšãã§ããŸãã
åºæ¬çãªäŸ
try:
num = int(input("æŽæ°ãå
¥åããŠãã ãã: "))
print(f"å
¥åãããæŽæ°: {num}")
except ValueError:
print("ãšã©ãŒ: æŽæ°ãå
¥åããŠãã ããïŒ")
å®è¡äŸ
æŽæ°ãå
¥åããŠãã ãã: 10
å
¥åãããæŽæ°: 10
æŽæ°ãå
¥åããŠãã ãã: abc
ãšã©ãŒ: æŽæ°ãå
¥åããŠãã ããïŒ
åäœã®ä»çµã¿
try:
ãããã¯å ã§input()
ã§å ¥åãåãåããint()
ã«å€æã- æ°å€ãå ¥åãããã°æ£åžžã«åŠçãç¶è¡ã
- ããæååãªã©ã®å€æã§ããªãå€ãå
¥åãããå Žåã
ValueError
ãçºçããexcept ValueError:
ã®åŠçãå®è¡ãããã
ããã«ããããšã©ãŒãçºçããŠãããã°ã©ã ãã¯ã©ãã·ã¥ããããšãªããé©åãªã¡ãã»ãŒãžã衚瀺ã§ããããã«ãªããŸãã
4.2 while
ã«ãŒãã䜿ã£ãŠæ£ããå
¥åãæ±ãç¶ãã
äžèšã®æ¹æ³ã§ã¯ããšã©ãŒãçºçãããšãšã©ãŒã¡ãã»ãŒãžã衚瀺ããã ãã§ãããæ£ããå€ãå ¥åããããŸã§ç¹°ãè¿ãæ±ããæ¹æ³ ããã䜿ãããŸãã
äŸïŒãŠãŒã¶ãŒãæŽæ°ãå ¥åãããŸã§ç¹°ãè¿ã
while True:
try:
num = int(input("æŽæ°ãå
¥åããŠãã ãã: "))
break # æ£ããå
¥åããããã«ãŒããæãã
except ValueError:
print("ãšã©ãŒ: æŽæ°ãå
¥åããŠãã ããïŒ")
print(f"å
¥åãããæŽæ°: {num}")
å®è¡äŸ
æŽæ°ãå
¥åããŠãã ãã: abc
ãšã©ãŒ: æŽæ°ãå
¥åããŠãã ããïŒ
æŽæ°ãå
¥åããŠãã ãã: 12
å
¥åãããæŽæ°: 12
ãã€ã³ã
while True:
ã䜿ãããšã§ç¡éã«ãŒããäœæãtry-except
ã䜿ã£ãŠããšã©ãŒãçºçããå Žåã¯ååºŠå ¥åãæ±ããã- æ£ããå
¥åãããå Žåã«
break
ã§ã«ãŒããæããã
ãã®æ¹æ³ã䜿ãã°ããŠãŒã¶ãŒãå¿ ãæ£ãã圢åŒã§å ¥åãããŸã§ããã°ã©ã ãåäœãç¶ããŸãã
4.3 try-except
ã䜿ã£ãè€æ°ã®å
¥ååŠç
è€æ°ã®å€ãåãåãå Žåããtry-except
ã䜿ãããšã§å®å
šã«åŠçã§ããŸãã
äŸïŒã¹ããŒã¹åºåãã§è€æ°ã®æŽæ°ãå ¥å
while True:
try:
numbers = list(map(int, input("ã¹ããŒã¹ã§åºåã£ãŠæŽæ°ãå
¥åããŠãã ãã: ").split()))
break # æ£ããå
¥åããããã«ãŒããæãã
except ValueError:
print("ãšã©ãŒ: æŽæ°ã®ã¿ãå
¥åããŠãã ããïŒ")
print(f"å
¥åãããæŽæ°ãªã¹ã: {numbers}")
å®è¡äŸ
ã¹ããŒã¹ã§åºåã£ãŠæŽæ°ãå
¥åããŠãã ãã: 10 20 30
å
¥åãããæŽæ°ãªã¹ã: [10, 20, 30]
ã¹ããŒã¹ã§åºåã£ãŠæŽæ°ãå
¥åããŠãã ãã: 10 abc 30
ãšã©ãŒ: æŽæ°ã®ã¿ãå
¥åããŠãã ããïŒ
解説
map(int, input().split())
ã䜿ã£ãŠè€æ°ã®æŽæ°ãååŸãtry-except
ã䜿ããå ¥åãæ°å€ä»¥å€ã®å Žåã¯åå ¥åãæ±ããã
4.4 finally
ã掻çšããŠåŸåŠçãè¡ã
try-except
ã«ã¯ããšã©ãŒã®æç¡ã«é¢ãããæåŸã«å®è¡ããã finally
ãããã¯ããããŸãã
äŸïŒãªãœãŒã¹ã®è§£æŸåŠç
try:
num = int(input("æŽæ°ãå
¥åããŠãã ãã: "))
print(f"å
¥åãããæŽæ°: {num}")
except ValueError:
print("ãšã©ãŒ: æŽæ°ãå
¥åããŠãã ããïŒ")
finally:
print("åŠçãçµäºããŸãã")
å®è¡çµæ
æŽæ°ãå
¥åããŠãã ãã: abc
ãšã©ãŒ: æŽæ°ãå
¥åããŠãã ããïŒ
åŠçãçµäºããŸãã
finally:
ãããã¯ã䜿ãããšã§ãäŸå€ã®æç¡ã«é¢ãããæåŸã«åŠçãå®è¡ã§ããããããªãœãŒã¹ã®åŸåŠçãªã©ã«å©çšãããŸãã
4.5 ãŸãšã
æ¹æ³ | 説æ | 䜿ãã©ãã |
---|---|---|
try-except | äŸå€ããã£ããããŠãšã©ãŒåŠçãè¡ã | åçŽãªå ¥åãã§ã㯠|
while + try-except | æ£ããå ¥åãåŸããããŸã§ç¹°ãè¿ãå ¥åãæ±ãã | ãŠãŒã¶ãŒãæ£ããå ¥åãããŸã§ç¶ããåŠç |
try-except-finally | ãšã©ãŒåŠçïŒåŸåŠçãå®è¡ | ãã¡ã€ã«ãããŒã¿ããŒã¹ã®ãªãœãŒã¹ç®¡ç |
5. å¿çšç·š: é«åºŠãªå ¥ååŠç
Pythonã§ã¯ãæšæºã®input()
é¢æ°ã ãã§ãªããããŸããŸãªæ¹æ³ã§ãŠãŒã¶ãŒããã®å
¥åãåãåãããšãã§ããŸããç¹ã«ããã¡ã€ã«ããã®å
¥åãã³ãã³ãã©ã€ã³åŒæ°ã®ååŸããã¹ã¯ãŒãå
¥åã®é衚瀺å ãªã©ã¯ãå®çšçãªããã°ã©ã ãäœæããéã«åœ¹ç«ã¡ãŸãã
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãsys.stdin.read()
ãargparse
ãgetpass
ã䜿ã£ãé«åºŠãªå
¥ååŠçã解説ããŸãã
5.1 ãã¡ã€ã«ããã®å
¥åãsys.stdin.read()
ã
Pythonã§ã¯ãinput()
ã®ä»£ããã« ãã¡ã€ã«ã®å
容ãæšæºå
¥åïŒstdinïŒãšããŠèªã¿èŸŒã ããšãå¯èœã§ããããã«ããããã¡ã€ã«ã®å
容ãããã°ã©ã ã«æž¡ããŠåŠçã§ããŸãã
ãã¡ã€ã«ããã®å ¥åãååŸããæ¹æ³
import sys
data = sys.stdin.read() # æšæºå
¥åããã¹ãŠèªã¿èŸŒã
print("å
¥åãããããŒã¿:")
print(data)
å®è¡æ¹æ³ïŒLinux/macOSã®ã¿ãŒããã«ïŒ
$ python script.py < sample.txt
ãã®ããã« < ãã¡ã€ã«å
ãæå®ããããšã§ãsample.txt
ã®å
容ã sys.stdin.read()
ã§èªã¿åãããŸãã
çšé
- 倧éã®ããŒã¿ãåŠçããããã°ã©ã ïŒãã°è§£æãããŒã¿å€æïŒ
- ãã¡ã€ã«ããã€ãã§æž¡ãã¹ã¯ãªãã
5.2 ã³ãã³ãã©ã€ã³åŒæ°ãåãåããargparse
ã
ã³ãã³ãã©ã€ã³åŒæ°ã䜿ããšãã¹ã¯ãªããå®è¡æã«å€éšããå€ãæž¡ãããšãã§ããŸããããã¯ãã¹ã¯ãªããã®åäœãæè»ã«å€ããããšãã«äŸ¿å©ã§ãã
argparse
ã䜿ã£ãåºæ¬çãªäŸ
import argparse
parser = argparse.ArgumentParser(description="ãŠãŒã¶ãŒã®ååãååŸããã¹ã¯ãªãã")
parser.add_argument("name", help="ããªãã®ååãå
¥åããŠãã ãã")
args = parser.parse_args()
print(f"ããã«ã¡ã¯ã{args.name}ããïŒ")
å®è¡æ¹æ³
$ python script.py Taro
ããã«ã¡ã¯ãTaroããïŒ
è€æ°ã®åŒæ°ãåãåã
parser.add_argument("age", type=int, help="幎霢ãå
¥åããŠãã ãã")
args = parser.parse_args()
print(f"{args.name}ããã¯{args.age}æ³ã§ãã")
å®è¡æ¹æ³
$ python script.py Taro 25
Taroããã¯25æ³ã§ãã
çšé
- ã³ãã³ãã©ã€ã³ããŒã«ã®äœæ
- ã¹ã¯ãªããã®èšå®å€ãå€éšããæå®
5.3 ãã¹ã¯ãŒãå
¥åãé衚瀺ã«ãããgetpass
ã
éåžžãinput()
ã§ãã¹ã¯ãŒããå
¥åãããšãã¿ãŒããã«ã«ãã®ãŸãŸè¡šç€ºãããŠããŸããŸãããããé²ãã«ã¯ãgetpass
ã¢ãžã¥ãŒã«ã䜿ããŸãã
getpass
ã䜿ã£ãå®å
šãªãã¹ã¯ãŒãå
¥å
import getpass
password = getpass.getpass("ãã¹ã¯ãŒããå
¥åããŠãã ãã: ")
print("ãã¹ã¯ãŒããå
¥åãããŸãã")
å®è¡çµæïŒå ¥åæã«ãã¹ã¯ãŒããèŠããªãïŒ
ãã¹ã¯ãŒããå
¥åããŠãã ãã:
ãã¹ã¯ãŒããå
¥åãããŸãã
çšé
- ã»ãã¥ãªãã£ãéèŠããã¹ã¯ãªãã
- èªèšŒãå¿ èŠãªããã°ã©ã
5.4 ãŸãšã
æ¹æ³ | 説æ | äž»ãªçšé |
---|---|---|
sys.stdin.read() | ãã¡ã€ã«ã®å 容ãæšæºå ¥åãšããŠèªã¿èŸŒã | ããŒã¿åŠçããã°è§£æ |
argparse | ã³ãã³ãã©ã€ã³åŒæ°ãåãåã | ã³ãã³ãã©ã€ã³ããŒã« |
getpass | ãã¹ã¯ãŒãå ¥åãé衚瀺ã«ãã | ã»ãã¥ãªãã£éèŠã®å ¥å |
6. Python 2ãšã®äºææ§ïŒè£è¶³æ å ±ïŒ
Python 3 ã§ã¯ input()
é¢æ°ã䜿çšããŠãŠãŒã¶ãŒã®å
¥åãååŸããŸãããPython 2 ã§ã¯ input()
ãš raw_input()
ãšãã2ã€ã®é¢æ°ãååšããŸãããPython 2 ã䜿çšããç°å¢ã§ã¯ãå
¥åã®åŠçæ¹æ³ãç°ãªããããå€ãã³ãŒããæ±ãéã«ã¯æ³šæãå¿
èŠã§ãã
ãã®ã»ã¯ã·ã§ã³ã§ã¯ãPython 2 ãš Python 3 ã® input()
ã®éãã«ã€ããŠè§£èª¬ããŸãã
6.1 Python 2 ã® input()
ãš raw_input()
Python 2 ã§ã¯ãinput()
ãš raw_input()
ãšãã2ã€ã®ç°ãªãå
¥åé¢æ°ããããŸããã
é¢æ° | Python 2 ã«ãããåäœ | Python 3 ã§ã®å¯Ÿå¿ |
---|---|---|
raw_input() | æååãšããŠå ¥åãåãåã | input() ã«çµ±å |
input() | å ¥åãããå 容ã åŒãšããŠè©äŸ¡ | eval(input()) ã«çžåœ |
Python 2 ã§ã¯ raw_input()
ã input()
ã«çžåœããPython 3 ã§ã¯ input()
ã®åäœã raw_input()
ã«çµ±åãããŸããã
6.2 Python 2 ã® input()
ã®å±éºæ§
Python 2 ã® input()
ã¯ããŠãŒã¶ãŒã®å
¥åãPythonã®ã³ãŒããšããŠè©äŸ¡ãã ãšããå±éºãªä»æ§ã«ãªã£ãŠããŸãã
äŸãã°ã以äžã®ã³ãŒããèããŠã¿ãŸãããã
# Python 2 ã®å Žå
value = input("äœãå
¥åããŠãã ãã: ")
print(value)
ãã®ã³ãŒããå®è¡ãããšããŠãŒã¶ãŒã 5 + 5
ãšå
¥åããå Žåãèªåçã«èšç®ãã㊠10
ãåºåãããŸãã
äœãå
¥åããŠãã ãã: 5 + 5
10
ããã¯ãä»»æã®ã³ãŒããå®è¡ã§ãã ãšããã»ãã¥ãªãã£äžã®ãªã¹ã¯ã䌎ããŸãã
äŸãã°ããŠãŒã¶ãŒã __import__('os').system('rm -rf /')
ã®ãããªå±éºãªã³ãã³ããå
¥åããå Žåãã·ã¹ãã ã«ãã¡ãŒãžãäžããå¯èœæ§ããããŸãã
å®å šãªä»£æ¿ç
Python 2 ã䜿çšããå Žåã¯ãraw_input()
ã䜿ãããšã§ããŠãŒã¶ãŒã®å
¥åãæååãšããŠæ±ãããšãã§ããŸãã
# Python 2 ã®å®å
šãªæ¹æ³
value = raw_input("äœãå
¥åããŠãã ãã: ")
print(value)
Python 3 ã§ã¯ input()
ãå®å
šãªä»æ§ã«ãªã£ãŠããããããã®åé¡ã¯çºçããŸããã
6.3 Python 3 㧠Python 2 ã®ã³ãŒããå®è¡ããæ¹æ³
Python 2 ã§æžãããã³ãŒãã Python 3 ã§åäœãããå Žåãraw_input()
ã input()
ã«å€æŽããå¿
èŠããããŸãã
ããããæåã§ä¿®æ£ããã®ãé£ããå Žåã2to3
ãšããããŒã«ã䜿ãããšã§èªåå€æãå¯èœã§ãã
2to3
ã䜿çšããã³ãŒãã®å€æ
Python 3 ã«ã¯ 2to3
ãšããããŒã«ãçšæãããŠãããPython 2 ã®ã³ãŒãã Python 3 ã«å€æã§ããŸãã
$ 2to3 old_script.py -w
ããã«ãããraw_input()
㯠input()
ã«èªåçã«çœ®ãæããããŸãã
6.4 ãŸãšã
ããŒãžã§ã³ | å®å šãªå ¥åæ¹æ³ |
---|---|
Python 2 | raw_input() ã䜿çšïŒinput() ã¯å±éºïŒ |
Python 3 | input() ã䜿çšïŒå®å
šãªåäœïŒ |
- Python 2 ã®
input()
㯠å±éº ãªã®ã§ã䜿çšããªãããã«ããã raw_input()
㯠Python 3 ã§ã¯input()
ã«çµ±åãããã- å€ã Python 2 ã®ã³ãŒããå€æããã«ã¯
2to3
ããŒã«ã䜿çšããã
7. ãŸãšã
æ¬èšäºã§ã¯ãPythonã§ãŠãŒã¶ãŒããã®å
¥åãåãåãæ¹æ³ã«ã€ããŠãåºæ¬ããå¿çšãŸã§è©³ãã解説ããŸãããåå¿è
åãã® input()
é¢æ°ã®äœ¿ãæ¹ããããšã©ãŒãã³ããªã³ã°ãé«åºŠãªå
¥ååŠçãŸã§ãå¹
åºããããã¯ãã«ããŒããŸããã
7.1 èšäºã®ãã€ã³ããŸãšã
ã»ã¯ã·ã§ã³ | å 容 |
---|---|
1. ã¯ããã« | input() ã䜿ã£ãŠãŠãŒã¶ãŒããã®å
¥åãåãåãéèŠæ§ã説æ |
2. input() ã®åºæ¬ | æååå
¥åãæ°å€å
¥åïŒint() / float() ïŒã®æ¹æ³ã解説 |
3. è€æ°ã®å ¥åãåãåã | split() ã䜿ã£ãŠãªã¹ã圢åŒã§åãåãæ¹æ³ããwhile ã«ãŒãã§ã®è€æ°è¡å
¥å |
4. ãšã©ãŒãã³ããªã³ã° | try-except ã掻çšãããšã©ãŒãé©åã«åŠçããæ¹æ³ |
5. é«åºŠãªå ¥ååŠç | sys.stdin.read() ã§ãã¡ã€ã«ããå
¥åãargparse ã§ã³ãã³ãã©ã€ã³åŒæ°ãgetpass ã§ãã¹ã¯ãŒãå
¥å |
6. Python 2 ãšã®éã | raw_input() ãš input() ã®éããPython 2 ã§ã®å®å
šãªå
¥åæ¹æ³ |
7.2 Python ã®ãŠãŒã¶ãŒå ¥ååŠçã®ãã¹ããã©ã¯ãã£ã¹
- åºæ¬ã®
input()
ã䜿ã
input()
ã䜿ãã°ãç°¡åã«æååã®å ¥åãå¯èœã- æ°å€ãåãåããšãã¯
int()
ãfloat()
ã§åå€æãè¡ãã
- ãšã©ãŒãã³ããªã³ã°ãé©çšãã
try-except
ã掻çšãããŠãŒã¶ãŒã®å ¥åãã¹ã«ããããã°ã©ã ã®ç°åžžçµäºãé²ãã- æ°å€å
¥åã®éã«ã¯
int()
ãfloat()
ãé©åã«æ±ãã
- è€æ°ã®å ¥åãåŠçãã
split()
ã䜿ã£ãŠãäžåºŠã«è€æ°ã®å€ããªã¹ããšããŠååŸãwhile
ã«ãŒãã䜿ããä»»æã®è¡æ°ã®å ¥åãåãåãã
- é«åºŠãªå ¥åæ¹æ³ã掻çšãã
- ãã¡ã€ã«å
¥åïŒ
sys.stdin.read()
ã§ãã¡ã€ã«ãèªã¿èŸŒãã - ã³ãã³ãã©ã€ã³åŒæ°ïŒ
argparse
ã䜿ã£ãŠãå€éšããå€æ°ãæž¡ãã - ãã¹ã¯ãŒãå
¥åïŒ
getpass
ã䜿çšããŠãã»ãã¥ãªãã£ã確ä¿ããã
- Python 2 ãšã®äºææ§ãèæ ®ãã
- Python 2 ã§ã¯
raw_input()
ã䜿çšããinput()
ã®äœ¿çšã¯é¿ããã - Python 3 ã«ç§»è¡ããéã«ã¯ã
2to3
ã掻çšããŠã³ãŒããå€æããã
7.3 ããããã®ã¹ããã
Pythonã® input()
ã掻çšããããšã§ãããã€ã³ã¿ã©ã¯ãã£ããªããã°ã©ã ãäœæã§ããŸããæ¬èšäºã§çŽ¹ä»ããå
容ã掻çšããå®éã«èªåã®ããã°ã©ã ã«çµã¿èŸŒãã§ã¿ãŸãããã
ãããããã«é«åºŠãªå ¥ååŠçãåŠã³ããå Žåã¯ã以äžã®ãããã¯ãåŠã¶ã®ãããããã§ãã
- GUIã䜿ã£ãå
¥ååŠçïŒ
tkinter
ãPyQt
ãªã©ïŒ - ããŒã¿ããŒã¹å
¥åã®åŠçïŒ
sqlite3
ãMySQL
ãšã®é£æºïŒ - Webãã©ãŒã ããã®ããŒã¿å ¥åïŒFlask ã Django ã®ãã©ãŒã ïŒ
Pythonã®ãŠãŒã¶ãŒå ¥åãèªç±èªåšã«æ±ããããã«ãªãã°ãWebã¢ããªã±ãŒã·ã§ã³ãããŒã¿åŠçããŒã«ãªã©ãããé«åºŠãªããã°ã©ã ã®éçºã«ãå¿çšã§ããŸãã
æ¬èšäºãåèã«ãPython ã§ã®å ¥ååŠçãã¹ã ãŒãºã«ãã¹ã¿ãŒããŸãããïŒ ð