Python从单输入改为列表结果

2024-09-21 03:02:43 发布

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

有人能解释一下下面的错误是怎么发生的吗

单输入代码

PASTED_CRM_DATA = "13 HOADLEY ST MAWSON ACT 2607"
URL_LIST = 'https://www.realestate.com.au/property/' + str(PASTED_CRM_DATA.replace(' ', '-').lower()),

结果:刮取URL 1/1https://www.realestate.com.au/property/13-hoadley-st-mawson-act-2607

但是,当转换为列表时

PASTED_CRM_DATA = ["13 HOADLEY ST MAWSON ACT 2607",
"13 HOADLEY ST MAWSON ACT 2607"
]
URL_LIST = 'https://www.realestate.com.au/property/' + str(PASTED_CRM_DATA.replace(' ', '-').lower()),

结果:AttributeError:'list'对象没有属性'replace'

我从理论上理解这个错误,但是如何克服对象不能格式化列表中的文本呢


Tags: comurldatawww错误propertyactreplace
2条回答

.replace表示字符串,表示需要循环并逐个替换的列表

PASTED_CRM_DATA = ["13 HOADLEY ST MAWSON ACT 2607",
"13 HOADLEY ST MAWSON ACT 2607"]
URL_LIST = ['https://www.realestate.com.au/property/' + x.replace(' ', '-').lower() for x in PASTED_CRM_DATA]

print(URL_LIST)

# ['https://www.realestate.com.au/property/13-hoadley-st-mawson-act-2607', 
#  'https://www.realestate.com.au/property/13-hoadley-st-mawson-act-2607']

Edit

您正在用str将列表转换为字符串,这就是为什么会出现错误,您必须在转换后进行替换。 我误解了代码的目标,我将其更正为:

URL_LIST = ['https://www.realestate.com.au/property/' + endpoint.replace(' ', '-').lower() for endpoint in PASTED_CRM_DATA]

相关问题 更多 >

    热门问题