用python编程。
最新问答
- 天晴0608
我最开始的想法是和楼上一样的想法,但是实际作中发现了一些问题。
首先,楼主给的csv文件本身是参差的,所以只能用csv.reader取得一行的list,需要自己去解析
然后,800个的量也不算太小,用dict建立索引的话效率不会太高
综上,我的想法是结构用一个保存作者名的set和保存2位有共同著作的作者的set,这样占用的空间也比较小,然后建立表格也比较简单。
不过实现需要一点时间,晚上回家之后试着写写看吧。不过800个确实挺多,显示出来的表能有多大啊。
-----------------------------------------------------------------------------------
import csv
import itertools
if __name__ == '__main__':
reader = csv.reader(open('books.csv'))
authors = set()
pairs = set()
for line in reader:
list = line[3:]
if list[0] == 'column1': continue
if '' in list : list.remove('')
for str in list: authors.add(str)
for pair in itertools.combinations(list, 2): pairs.add(pair)
line = ''
for author1 in authors:
line += '\t' + author1
print(line)
for author1 in authors:
line = author1
for author2 in authors:
line += '\t' + ('X' if author1 == author2 else '1' if ((author1, author2) in pairs or (author2, author1) in pairs) else '0')
print(line)
我写的,从楼上的代学习到了itertools.combinations的用法,感谢。
代修改了一次,我被某种一切都是对象的语言控制了,不用类不舒服斯基。现在这样看舒服多了。浏览 181赞 72时间 2023-05-23 - 老幺2010
1.读:使用csv模块读入或者自己写reader
2.建立索引:使用dict,以著作名为key,如果有相同的著作的作者加到这个key的value里面。浏览 234赞 94时间 2022-05-03
相关问答
-
用python编程。
-
Python核心编程(第二版)PDF和Python基础教程(第二版)PDF?
-
《python核心编程》 电子书下载
-
Python 在编程语言中是什么地位?
-
急求Python语言编程物体运动检测程序
-
用Python编写班级档案管理系统
-
用python编写的一个学生成绩管理系统
-
《Python 核心编程》和《Python 学习手册》哪一本更适合零基础初学者?为什么?
-
我用python运行论文里面的一个程序。
-
编写python爬虫,类搜索引擎的程序是否有意义
-
如何调用xgboost python
-
如何编写Python文档生成器
-
如何利用python使用libsvm
-
引用的编程
-
如何用Python做爬虫
-
用TCP应用编程实现文件传输怎么编程序?
-
Python使用matplotlib做出的图。
-
Python中用PIL库批量给图片加上序号的教程
-
如何面试python高级工程师
-
是用python学数据挖掘好。