如何将Python csv字符串转换为数组?

如何将Python csv字符串转换为数组?

**在本文中,我们将了解如何将CSV字符串转换为数组。 **

第一种方法是使用 split() 方法。该方法接受一个参数,并将字符串拆分为字符应分隔的字符。由于输入是逗号分隔的CSV,因此我们将分隔符设置为逗号并将字符串拆分为数组。

Python中的 split() 方法是一种字符串操作函数,将较大的字符串分割为多个较小的字符串。字符串由 split() 方法作为列表返回。

示例

在下面给出的示例中,我们将CSV字符串作为输入,并将其转换为数组 −

str1 = "Hello,Everyone,Welcome,to,Tutorialspoint"

print("给定的 CSV 字符串是")
print(str1)

print("将给定的 CSV 字符串转换为数组")
res = list(map(str.strip, str1.split(',')))
print(res)

输出

上面示例的输出如下

给定的 CSV 字符串是
Hello,Everyone,Welcome,to,Tutorialspoint
将给定的 CSV 字符串转换为数组
['Hello', 'Everyone', 'Welcome', 'to', 'Tutorialspoint']

使用 inner.split() 和 splitlines()

第二个方法是使用 inner.split()splitlines() 。如果输入的CSV字符串是多行的,则使用此方法。在这种情况下,首先应该拆分行,因此我们将使用 splitlines() 方法来在换行符处拆分。在拆分新行后,我们应该使用 inner.split() 方法拆分每行逗号,然后将它们合并成单个列表。

示例

在下面给出的示例中,我们将多行CSV字符串作为输入,并使用 inner.split()splitlines() 将其转换为数组 −

s = "1, John Doe, Boston, USA\n2, Jane Doe, Chicago, USA"

print("给定的 CSV 字符串是")
print(s)

print("将给定的 CSV 字符串转换为数组")
res = list(map(str.strip, s_inner.split(',')) for s_inner in s.splitlines())
print((res))

输出

上面示例的输出如下

给定的 CSV 字符串是
1, John Doe, Boston, USA
2, Jane Doe, Chicago, USA
将给定的 CSV 字符串转换为数组
[<map 对象at 0x7f8074f002b0>, <map 对象 at 0x7f8074f00390>]

使用csv库的reader()方法

第三种方法是使用csv库的 reader() 方法。该方法将CSV字符串作为输入并将其转换为数组。该方法也可用于多行输出,但我们必须使用 splitlines() 方法将多行转换。

示例

在下面给出的示例中,我们将CSV字符串作为输入,并使用 reader() 方法将其转换为数组 −

import csv
str1 = "1, John Doe, Boston, USA\n2, Jane Doe, Chicago, USA".splitlines()

print("给定的 CSV 字符串是")
print(str1)

print("将给定的 CSV 字符串转换为数组")
x = csv.reader(str1)
print(list(x))

输出

上面示例的输出如下

给定的 CSV 字符串是
['1, John Doe, Boston, USA', '2, Jane Doe, Chicago, USA']
将给定的 CSV 字符串转换为数组
[['1', ' John Doe', ' Boston', ' USA'], ['2', ' Jane Doe', ' Chicago', ' USA']]

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程