Duc*_*e19 2 python string dictionary strip
我正在制定一个例程,'.'从网络抓取过程中动态构建的字典中删除句点。下面是我正在使用的代码,它似乎可以正常工作以删除字典值(y)的句点,但不能删除键(x)。
关于如何解决这个问题有什么指导吗?
def dot_be_gone(dirty_dic):
clean_dic = {}
for x,y in dirty_dic.items():
clean_x = str(x).strip('.')
clean_y = str(y).strip('.')
clean_dic[clean_x] = clean_y
return(clean_dic)
dot_be_gone({"No. of Pets":"1", "No Problem":"Okay..."})
Run Code Online (Sandbox Code Playgroud)
执行时会产生以下结果:
def dot_be_gone(dirty_dic):
clean_dic = {}
for x,y in dirty_dic.items():
clean_x = str(x).strip('.')
clean_y = str(y).strip('.')
clean_dic[clean_x] = clean_y
return(clean_dic)
dot_be_gone({"No. of Pets":"1", "No Problem":"Okay..."})
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,句点已从第二个值中删除,但没有从第一个键中删除。
.strip()仅从开始和结束处修剪字符,.replace()而是使用
x = {'No. of Pets': '1', 'No Problem': 'Okay...'}
{k.replace('.', '') : v.replace('.', '') for k, v in x.items()}
Run Code Online (Sandbox Code Playgroud)
{'宠物数量': '1', '没问题': '好的'}