Python入門 inputメソッド

入力時に指定した文字を表示する

inputの引数に文字列を指定することで、入力受付時にターミナルにその文字が表示されるようになる。

my_input = input('please input: ')

以下のように入力受付時にターミナルに「please input: 」 が表示される。

please input: 

複数回入力を受け付ける

input は一度だけ入力を受け付けるが、複数回入力したい場合がある。

ループを利用する

以下は、「quit input? y/n: 」で「y」を入力するまで入力をループし、入力された文字列を結合して返す。

#! /usr/bin/env python3

def input_added_items():
    your_input = ''
    exit = False

    while not exit:
        your_input = your_input + input('please input: ')
        if(input('quit input? y/n: ') == 'y'):
            exit = True
    return your_input


my_items = input_added_items()
print(my_items)

break を使うことで変数が一つ減って読みやすくなる。

#! /usr/bin/env python3

def input_added_items():
    your_input = ''

    while True:
        your_input = your_input + input('please input: ')
        if(input('quit input? y/n: ') == 'y'):
            break
            
    return your_input


my_items = input_added_items()
print(my_items)

iter を使用する

iter の第一引数に input を渡し、第二引数に input を抜ける時の文字列を指定するとよりシンプルに書ける。

#! /usr/bin/env python3

def input_added_items():
    your_input = ''

    print('please input: ')
    
    for str in iter(input, 'quit'):
        your_input += str

    return your_input


my_items = input_added_items()
print(my_items)