我如何将每个细胞转移到不同的形式,然后将它们分离到2个细胞?CSV python

我如何将每个细胞转移到不同的形式,然后将它们分离到2个细胞?CSV python,python,excel,csv,Python,Excel,Csv,我有一个number.csv文件,每个单元格包含一个数字。例如,它看起来像这样 0,1,2 -1,0,1 1,2,-1 然后我想根据我的规则将每个数字转换成一个特定的名称 # The rule is: # 0 for AA # 1 for AB # 2 for BB # -1 for 00 (that's double zero) 因此,我将得到类似于 AA,AB,BB 00,AA,AB AB,BB,00 然后我必须

我有一个number.csv文件,每个单元格包含一个数字。例如,它看起来像这样

    0,1,2 
   -1,0,1
    1,2,-1
然后我想根据我的规则将每个数字转换成一个特定的名称

   # The rule is: 
   # 0 for AA
   # 1 for AB
   # 2 for BB
   # -1 for 00 (that's double zero)
因此,我将得到类似于

   AA,AB,BB
   00,AA,AB
   AB,BB,00
然后我必须将每个单元格分成两个单元格,并写入一个新的result.csv文件。最后它看起来像

   A,A,A,B,B,B
   0,0,A,A,A,B
   A,B,B,B,0,0  
我只知道如何将每个数字替换为一个特定的名称(例如,0到AA),然后我一直在研究如何将AA划分为a,每个单元格的a,并将每行分隔为下一行

有没有人知道如何通过csv模块解决这个问题,或者知道如何用更聪明的方法来解决这个问题

非常感谢

with open(r'G:\number.csv', 'r') as f:  # read
    content = f.read()
    with open(r'G:\number-post.csv', 'wb') as fh: # write
        fh.write(content.replace('-1','O,O').replace('0','A,A').replace('1','A,B').replace('2','B,B').replace('O','0'))

只需将上面的文件名替换为相应的文件名。

使用VBA

Sub user3058889()
    Dim d1 As String, s2 As String
    s1 = "C:\TestFolder\input.csv"
    s2 = "C:\TestFolder\output.csv"
    Close #1
    Close #2
    Open s1 For Input As #1
    Open s2 For Output As #2
    Do While Not EOF(1)
            Line Input #1, textline
            textline = Replace(textline, "-1", "z")
            textline = Replace(textline, "0", "A,A")
            textline = Replace(textline, "1", "A,B")
            textline = Replace(textline, "2", "B,B")
            textline = Replace(textline, "z", "0,0")

            Print #2, textline
    Loop

    Close #1
    Close #2
End Sub

是的,我已经试过了,但我坚持了如何分割每个单元格,并将每行分隔到不同的下一行。谢谢,但当我将它们写入.csv文件,然后打开文件时,它不会自动分隔到下一个单元格。我已更改了答案。我再次更改了答案。只需使用
open
打开该文件。谢谢,我们将尝试一下!谢谢,但我不知道如何使用VBA,仍然感谢您的回答。:)