5 回答
![?](http://img1.sycdn.imooc.com/54584d6100015f5802200220-100-100.jpg)
TA贡献1803条经验 获得超3个赞
import csv
input1 = input()
with open(input1, 'r') as wordsfile:
words_reader = csv.reader(wordsfile)
for row in words_reader:
list_of_words = row
no_duplicates_in_list = list(dict.fromkeys(list_of_words))
listlength = len(no_duplicates_in_list)
for i in range(listlength):
print(no_duplicates_in_list[i], list_of_words.count(no_duplicates_in_list[i]))
与 Aryman 的几乎相同,但顺序与 csv 中的相同
![?](http://img1.sycdn.imooc.com/545861e40001199702200220-100-100.jpg)
TA贡献1845条经验 获得超8个赞
尝试使用 set()
import csv
with open('input1.csv', 'r') as wordsfile:
words_reader = csv.reader(wordsfile)
for row in words_reader:
list_of_words = set(row)
for word in list_of_words:
count = row.count(word)
print(word, count)
我对 csv 库不太熟悉,我不知道 row 是否是一个列表,或者如果这引发错误,那么抱歉。如果 row 是一个字符串,您可能可以使用
row = row.split()
list_of_words = set(row)
希望能帮助到你。
![?](http://img1.sycdn.imooc.com/545863aa00014aa802200220-100-100.jpg)
TA贡献1848条经验 获得超6个赞
好吧,我对 Python 很基础,但我在大约一个小时的尝试不同的 for 循环等的情况下就弄清楚了这一点。我最终坚持使用列表,因为这就是指令中指示的分配。为了消除第一个列表中的重复项,我创建了第二个列表并嵌套了一个 if 语句,该语句仅添加未包含在其中的单词,从而生成一个新列表,其中包含第一个列表中每个单词的一个副本。
filename = input()
words = []
new_words = []
with open(filename, 'r') as csvfile:
reader = csv.reader(csvfile, delimiter = ',')
for row in reader:
for word in row:
words.append(word)
for word in words:
freq = words.count(word)
if word not in new_words:
new_words.append(word)
print(word, freq)
![?](http://img1.sycdn.imooc.com/533e4d470001a00a02000200-100-100.jpg)
TA贡献1815条经验 获得超10个赞
import csv
name = input()
with open(name, 'r') as myfile:
Reader = csv.reader(myfile, delimiter=',')
dictionary = dict()
for l in Reader:
for m in l:
if m in dictionary:
dictionary[m] = dictionary[m] + 1
else:
dictionary[m] = 1
for n in list(dictionary.keys()):
print("{} {}".format(n, dictionary[n]))
![?](http://img1.sycdn.imooc.com/533e4c640001354402000200-100-100.jpg)
TA贡献1864条经验 获得超2个赞
导入 csv 单词 = {} user_file = input() with open(user_file, "r") as csvfile: inputreader = csv.reader(csvfile) for row in inputreader: listofwords = row
for i in row:
if i in words:
words[i] += 1
else:
words[i] = 1
对于单词中的 i: print(i, Words[i])
添加回答
举报