从用户inpu中提取第一个字母

2024-04-25 22:57:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我想选择用户输入的第一个字母,并将其用于循环中的决策。一个简单的例子:

play_again = input("Do you want to play again? (y/n)").lower()

程序应将“是”检测为“Y”,将“否”检测为“N”。你知道吗


Tags: to用户程序youinputplay字母lower
3条回答

要选择第一个字母,只需在输入后添加[0][0]是字符串切片-这里它只提取字符串的第一个字符。你知道吗

另外请注意,以'Y'开头的所有输入都将被视为“是”输出,而以'N'开头的所有输入都将被视为“否”输出。你知道吗

play_again = input("Do you want to play again? (y/n)").lower()
# Simply add [0]. But that does not work for empty strings.
if len(play_again) > 0) 
    play_again = play_again[0]

请注意,如果您提供一个空的输入,这将不起作用-否则将产生一个跟踪,说明IndexError: string index out of range。这就是为什么会有if语句。你知道吗

示例:

Do you want to play again? (y/n)YES
y

Do you want to play again? (y/n)no
n

Do you want to play again? (y/n)OMG
o

Do you want to play again? (y/n)yakety yak
y

Do you want to play again? (y/n)
#Empty String
play_again = input("Do you want to play again? (y/n)").lower()
first_letter=play_again[0]
#or
play_again = input("Do you want to play again? (y/n)").lower()[0]

字符串索引类似于Python中的列表索引。因此可以直接索引第0个元素:

play_again = input('Do you want to play again? (y/n)')[0].lower()

例如:

Do you want to play again? (y/n)Yes

print(play_again)

'y'

相关问题 更多 >