繁体   English   中英

“TypeError:描述符'索引'需要'列表'对象,但收到'str'”

[英]“TypeError: descriptor 'index' requires a 'list' object but received a 'str'”

最近,作为我的一个项目的一部分,我试图制作从常规到十六进制的文本转换器。

listA = input()

def letter_swap(to_find,to_swap):
    if i == to_find:
        num = list.index(to_find)
        int(num)
        listA[num] = to_swap

print(listA)
listA = list(listA)
print(listA)
for i in listA:
    letter_swap("a", "61")

listA = str(listA)
print(listA)

我希望它首先获取字符串,将其转换为列表,并在函数中获取特定字符的索引并将其更改(通过其索引)以选择一个(to_swap)。 然后只打印结果文本。 但是我得到以下错误。

TypeError: descriptor 'index' requires a 'list' object but received a 
'str').

那么你可以使用字符串表达式,如join()split()replace()来转换为字符串,操纵它然后将其转换回列表。 您应该处理输入格式。 这是代码:

listA = list(input('Insert list:'))


def letter_swap(to_find, to_swap):
    manipulated_string = "-".join(listA).replace(to_find, to_swap)
    return manipulated_string.split('-')


print(listA, letter_swap("a", "61"))

输出:

插入列表:abcd

['a','b','c','d'] ['61','b','c','d']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM