尝试查找并替换Python中200行元组列表的一部分

2024-09-26 22:43:07 发布

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

两个案子的样本都出现了。在下面。在一个长长的列表中,我的“e”变成了“\xe9”和“\xe8”,因为法语中的“e”上面有一个小逗号。我想无缝地将这些“\xe8”东西转换回“e”s。 我看到有一个模块(?)叫做Unidecode。从没用过。这是处理这件事的最好的方法吗?你知道吗

这些是列表中的元组。 列表的一部分的示例。。。你知道吗

(u'Caf\xe9 Society', 70)
(u'Oddball and the Penguins (Oddball)', 86)
(u'Antarctica: Ice & Sky (La glace et le ciel)', 95)
(u"Reset (Rel\xe8ve: Histoire d'une cr\xe9ation)", 75)

我试过。。。你知道吗

list3 = ['e' if x=='/ex9' else x for x in list2]

这并没有给我一个错误。它什么也做不了。你知道吗

我会把我的整个代码,因为我不太知道如何复制这个小规模。它收集了几百部电影的片名和配乐RottenTomatoes.com网站. 你知道吗

import requests

r3 = requests.get('https://www.rottentomatoes.com/api/private/v2.0/browse?page=1&limit=330&type=dvd-all&services=amazon%3Bamazon_prime%3Bfandango_now%3Bhbo_go%3Bitunes%3Bnetflix_iw%3Bvudu&sortBy=release')


movies = []
data = r3.json()
for result in data["results"]:
    movies.append((result["title"], result["tomatoScore"]))



list2 = [i for i in movies if i[1] >=60]


list3 = ['e' if x=='/ex9' else x for x in list2]

for i in list3:
    print i

Tags: incom列表forifresultmoviesrequests
1条回答
网友
1楼 · 发布于 2024-09-26 22:43:07

我想这是您从print得到的结果,我想您误解了它在python中的工作方式。您不需要替换任何内容,它们正是它们的字符,只是“转义版本”。你知道吗

尝试这样做:

for movie in movies:
    print movie[0], movie[1]
    print movie

结果是:

Café Society 70
(u'Caf\xe9 Society', 70)
Reset (Relève: Histoire d'une création) 75
(u"Reset (Rel\xe8ve: Histoire d'une cr\xe9ation)", 75)

打印字符串时,会得到对象的__str__方法的输出,实际上列表的__str__方法是不同的,它通过使用每个对象的__repr__方法来创建字符串,这就是为什么在控制台上会看到不同的结果。你知道吗

相关问题 更多 >

    热门问题