簡體   English   中英

在python中的數組中拆分字符串

[英]Splitting strings in an array in python

我有一個由兩列和幾行組成的數組。 在第一列中,有一些我想拆分的字符串。 這些元素的格式為(* .txt)。例如,“ main.txt”,我只需要保存前綴(main)。 但是,“拆分”功能不適用於陣列。 你能告訴我如何解決這個問題嗎? 我看到了幾則與我所問的內容相似的帖子,但找不到答案。 對於給您帶來的不便,我們深表歉意。 我剛剛開始使用python。

下面是我的代碼和錯誤:

arr = np.genfromtxt('file',dtype=(str))
rest=arr.split(".")[0]AttributeError                            Traceback (most recent call last)
<ipython-input-27-02be1ad07338> in <module>()
----> 1 rest=arr.split(".")[0]

AttributeError: 'numpy.ndarray' object has no attribute 'split'
import numpy as np

x= np.array((('aa.txt',1),('b.tct',2)))
print np.apply_along_axis(lambda a: (a[0].split('.')[0],a[1]),1,x)
[['aa' '1']
 ['b' '2']]

編輯:也許我應該詳細說明-numpy數組對於非數字矩陣而言並不自然。 考慮列表(假設文件中的分隔符為空格):

table=[(r.split()[0].split('.')[0],r.split()[1]) for r in open('file')]

或避免雙重分裂:

table = []
for r in open('file'): 
    r = r.split()
    table.append((r[0].split('.')[0],r[1]))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM