如何在Python中拆分2D数组中的字符串?

2024-04-28 00:50:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我对python相当陌生,我有一个任务,我必须从文本文件导入一些地址,然后搜索并缩写道路的标题(即将“road”改为“RD”)。你知道吗

到目前为止,我已经成功地导入了这个文件,并且我已经能够形成一个2D数组,其中整个地址都在主数组中的一个独立数组中。我一直在寻找一种进入数组内部的方法,这样我就可以将字符串拆分,这样我就可以进行缩写,然后在excel中将每个子数组输出到它自己的行中。你知道吗

这是我目前的代码:

def sec_2():
    addresses = [] 
    with open('Addresses2.txt', newline='') as Addresses2: 
        for row in csv.reader(Addresses2): 
            addresses.append(row)
    print(addresses) 

到目前为止,代码输出如下:

[['52 Corinthian Road','First Floor'],['20 Ingram Street','Forest Hills','New York'],['14 Westbourne Terrace Road','Buxton'],['The Terrace Restaurant','81 Royal Street','Solihull']]

我需要它是:

[['52'、'Corinthian'、'Road'、'First'、'Floor']]、[[['20'、'Ingram'、'Street'、'Forest'、'Hills'、'New'、'York']等。。。你知道吗


Tags: 代码streetnewaddresses地址数组rowfirst
2条回答

你应该使用结构拆分为列表中的每个字符串执行函数。你知道吗

split_strings = []
for string in string_list:
    split_strings.append(string.split(' '))

您可以使用itertools:

import csv
import itertools

data = csv.reader(open('filename.csv'))
final_data = [list(itertools.chain.from_iterable([b.split() for b in i])) for i in data]

相关问题 更多 >