Getting无法将int转换为str我的代码中的错误无法找出原因

2024-10-03 21:27:13 发布

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

我的代码应该取一个pin码,并将其转换为元音和辅音的“易于记忆”排列

def alphapinEncode(pin):
    vowels = "aeiou "
    consonants = "bcdfghjklmnpqrstvwyz "
    alphaPin = " "
    while pin > 0:
        newPin = pin // 100
        pinRemain = pin % 100
        vowelToFind = pinRemain % 5
        pinVowel = vowels.find(vowelToFind)
        pinConsonant = consonants.find(pinRemain // 5)
        pin = newPin
        alphaPin = alphaPin + pinVowel + pinConsonant

    return alphaPin

感谢您的帮助,谢谢!你知道吗


Tags: 记忆代码defpinfind元音辅音consonants
1条回答
网友
1楼 · 发布于 2024-10-03 21:27:13

我相信你的问题在于这两条线:

vowelToFind = pinRemain % 5
pinVowel = vowels.find(vowelToFind)

在本例中,vowelToFind是整数,vowels是字符串。strfind方法接受一个字符串参数,并返回它在字符串中的位置—您将传递一个整数。您甚至不希望在vowels中找到子字符串,您只是希望检索索引vowelToFind中的字符。我认为你应该做以下几点:

vowelToFind = pinRemain % 5
pinVowel = vowels[vowelToFind]

注意

我正在解决你问的“int to str”错误。我不确定你用来生成“易于记忆”字符序列的其他逻辑。你知道吗

相关问题 更多 >