Python CSV解析
阿神
阿神 2017-04-18 10:15:23
0
2
468

A,B,两列数据
例如:
若B1,B2列相同(其中B列的数据随机,非升降序)
则在C列呈现A1,A2数据差..

如图:

用VBA比较简单,用Python怎么解答.
之前的问题描述实在糟糕,非常抱歉.

阿神
阿神

闭关修行中......

Antworte allen(2)
PHPzhong

若B列相同,则在C列呈现,没听懂?标准库有cvs支持,解析转换成python数据类型不就行了吗

迷茫

要求不是太清楚, 看你的图, 如果A, B两列数据是排序过的, 并且B列最多有两个相同的, 那先把你的需求整理了一下

原始数据是A, B两列, 都是整数, 以B列为主从小到大排列, B列相同的情况下A列也是从小到大排列; 如果B列值相同, 则把A列对应的值相减, 结果插入C列

首先CSV文件可以按行读取, 同一行中不同单元格的间隔是,, 行尾有\n表示结束. 所以思路是按行读取, 存成一个二元列表, 依次比较, 比较完成后再用join插入,和\n存入csv文件就可以了, 代码如下:


    my_list = [[80, 7], [153, 7], [188, 19], [80, 20]]
    
    for i in range(1,len(my_list)):
        if my_list[i-1][1] == my_list[i][1]:
            my_list[i].append(my_list[i][0] - my_list[i-1][0])
            
    print my_list
    # [[80, 7], [153, 7, 73], [188, 19], [80, 20]]
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!