問題
在 python 中經(jīng)常會(huì)用到字符串替換,使用 format 可以實(shí)現(xiàn)該功能。
listversion = 300
cversion = 10
lastchapterid = 'gggggggggg'
url = 'https://XXXXX/XX/XXXX/XXXX?os=ios&channelId=bnf1349_10388_001&udid=12345678&pack_distinct=com.abc&version=1155&token=jMfkwJ5nnyBCWMJM4hUN3iVsC5YTCTns9fYvnywzkTI%3D&packageName=cn.packagename&idfa=E3142316-11DD-4016-BE68-60E5B5174E03&data=[{"book_source_id":"1q2w3e4r5t","list_version":{listversion},"c_version":{cversion},"last_chapter_id":{lastchapterid},"book_id":"1q2w3e4r5t","add_bookshelf_time":"1520412967699"}]'.format(listversion=listversion, cversion=cversion, lastchapterid=lastchapterid)
print(url)
最近在使用 format 時(shí),遇到了KeyError的錯(cuò)誤
KeyError: '"book_source_id"'
解決
在book_source_id前加一層大括號(hào)即可,如下:
url = 'https://XXXXX/XX/XXXX/XXXX?os=ios&channelId=bnf1349_10388_001&udid=12345678&pack_distinct=com.abc&version=1155&token=jMfkwJ5nnyBCWMJM4hUN3iVsC5YTCTns9fYvnywzkTI%3D&packageName=cn.packagename&idfa=E3142316-11DD-4016-BE68-60E5B5174E03&data=[{{"book_source_id":"1q2w3e4r5t","list_version":{listversion},"c_version":{cversion},"last_chapter_id":{lastchapterid},"book_id":"1q2w3e4r5t","add_bookshelf_time":"1520412967699"}}]'.format(listversion=listversion, cversion=cversion, lastchapterid=lastchapterid)