【发布时间】:2016-02-26 13:47:47
【问题描述】:
我正在尝试制作一个非常简单的程序,其中有两个 csv 文件,其中包含域列表或博客文章 URL。我正在尝试导入第一个并将域列和价格列放入我已经设法做到的字典中。
现在我想导入第二个 csv 文件,它只是一列博客文章 url。
在我从第二个文件导入 url 并将它们打印出来之后,每个 url 似乎都包含在 [] 中,如下所示:
[['http://www.gardening-blog.com/post-1'],['http://www.foodie-blog.com/post-2'],['http://www.someotherblog.com/post-1']....等等等等
这与使用 csv 阅读器导入有关吗?
另外我还有一个问题,剥离“http://”和“www”的最佳方式是什么。从网址列表中?我有两种方法,我在下面尝试过使用 map 和 join(注释掉),但它们不起作用,但我感觉这与列表问题有关。我已经用字典做了这个,但我不能用列表替换。
谢谢
import csv
reader = csv.reader(open("domains_prices.csv", 'r'))
reader2 = csv.reader(open('orders_list.csv', 'r'))
domains_prices={}
orders_list = list(reader2) #import all blog post urls into a list
for domain, price in reader:
domain = domain.replace('http://', '').replace('www', '')
domains_prices[domain] = price
#orders_list = ''.join(orders_list).replace('http://','').split()
#map(str.strip, orders_list)
print orders_list
编辑
这是我已经改变并且现在似乎可以工作的内容:
orders_list = []
for row in reader2:
orders_list.append(','.join(row))
orders_list = [s.replace('http://', '').replace('www.','') for s in orders_list]
【问题讨论】:
-
好的,我想我可能已经通过执行以下操作弄清楚了:对于 reader2 中的行:orders_list.append(','.join(row)) 似乎已经创建了一个列表,尽管我仍然不明白为什么在我第一次尝试这样做时将这些方括号放在每个项目周围......