如何查找用户输入字符串中所有字母的索引

2024-10-01 13:32:36 发布

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

任务如下: 编写一个从用户那里得到一个单词的程序。对于单词中的每个字母,打印字符串“abcdefghijklmnopqrstuvwxyzabdefghijklmnopqrstuvwxyz”中该字母的索引(例如,“A”将打印0,“z”将打印51)。在一行打印所有索引,用空格隔开。在

alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'

word = input('Type a word: ')

for ind in word:
    answer = ind.index(alphabet[0,-1])
    print(answer)

我的代码不运行。它说“TypeError:字符串索引必须是整数”。0和-1都是整数,它们表示给定字符串的第一个和最后一个位置。我不明白为什么这个不能正常运行。代码应该在0位置使用字母表,查看word中没有匹配的值,然后继续下一个,直到它到达类型化字符串中第一个字符的位置。然后打印出那个号码,然后继续。我做错什么了?在


Tags: 字符串代码用户answer程序input字母整数
3条回答

你打错电话了。您需要交换参数:

answer = alphabet.index(ind)

我想你的意思是遵循这样的模式。从输入单词中获取每个字符,并在字母表中找到字符出现的索引。在

answer = []
for char in word:
    answer += [alphabet.index(char)]

您可以通过列表理解进一步简化

^{pr2}$

或者您可以使用ord()函数使用ASCII代码

word = input("word:")
for i in range(len(word)):
    print(ord(word[i:i+1]), end="")

这将给你一个数字输出从一个字符串,它不仅限于字母表

相关问题 更多 >