使用 map() 将整数列表转换为字符串
Converting a list of integers to strings using map()
我不明白为什么 python 不允许我使用 map() 函数将整数列表更改为字符串列表。当我尝试在 python shell 中执行时,它工作正常,但当我在脚本中尝试时却不行,我真的很困惑为什么会发生这种情况。这是我的脚本代码:
def DashInsert(str):
list_int = map(int, list(str))
list_str = map(str, list_int)
return list_str
另外我知道我不需要将列表改回字符串,如果它已经以字符串形式出现,但我很好奇为什么 Python 不让我在转换后更改列表它变成一个整数列表。我一直收到 'str object is not callable' 错误。
当你这样做时:
def DashInsert(str):
您正在隐藏 DashInsert
范围内的 str
内置函数,因此当您尝试使用 list_str = map(str, list_int)
时,它不会按预期工作,因为 str
不再是 Python 的内置函数,它等于您作为 str
传递给函数的对象。考虑重命名它,例如:
def DashInsert(text):
list_int = map(int, list(text))
list_str = map(str, list_int)
return list_str
我不明白为什么 python 不允许我使用 map() 函数将整数列表更改为字符串列表。当我尝试在 python shell 中执行时,它工作正常,但当我在脚本中尝试时却不行,我真的很困惑为什么会发生这种情况。这是我的脚本代码:
def DashInsert(str):
list_int = map(int, list(str))
list_str = map(str, list_int)
return list_str
另外我知道我不需要将列表改回字符串,如果它已经以字符串形式出现,但我很好奇为什么 Python 不让我在转换后更改列表它变成一个整数列表。我一直收到 'str object is not callable' 错误。
当你这样做时:
def DashInsert(str):
您正在隐藏 DashInsert
范围内的 str
内置函数,因此当您尝试使用 list_str = map(str, list_int)
时,它不会按预期工作,因为 str
不再是 Python 的内置函数,它等于您作为 str
传递给函数的对象。考虑重命名它,例如:
def DashInsert(text):
list_int = map(int, list(text))
list_str = map(str, list_int)
return list_str