亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python:拆分未知長度的輸入并創建數組

Python:拆分未知長度的輸入并創建數組

料青山看我應如是 2021-05-31 09:50:01
在Python中,我將如何創建一個包含以下內容的拆分輸入的數組:前任。)(1,2,3)&(6,8,10)&(2,5)&(29,8,6)- 輸入將是任意數量的這些元組。-我會在'&'處分開并去掉括號-然后在這種情況下,我想將其轉換為數組:array= [[1,2,3], [6,8,10], [2,5], [29,8,6]]
查看完整描述

3 回答

?
至尊寶的傳說

TA貢獻1789條經驗 獲得超10個贊

如果Something是一個字符串,你可以這樣做。


something = "(1,2,3)&(6,8,10)&(2,5)&(29,8,6)"


words = something.split('&')


for i,x in enumerate(words):

    words[i] = x.replace('(','').replace(')','')

或使用列表理解而不是 for 循環之類的,


words[:] = [x.replace('(','').replace(')','') for x in words]


查看完整回答
反對 回復 2021-06-01
?
神不在的星期二

TA貢獻1963條經驗 獲得超6個贊

你可以試試這個方法:


>>> def to_list(s):

...     return [int(i) for i in s.strip('()').split(',')]

... 

>>> data = '(1,2,3)&(6,8,10)&(2,5)&(29,8,6)'

>>> [to_list(item) for item in data.split('&')]

[[1, 2, 3], [6, 8, 10], [2, 5], [29, 8, 6]]


查看完整回答
反對 回復 2021-06-01
?
富國滬深

TA貢獻1790條經驗 獲得超9個贊

如果您需要注意更改輸入字符串,這是另一種方法


data = '(1,2,3)&(6,8,10)&(2,5)&(29,8,6)'

a = []

for i in data.split('&'):

    a.append([int(j) for j in i[i.find('(')+1:i.find(')')].split(',')])

print(a)  #[[1, 2, 3], [6, 8, 10], [2, 5], [29, 8, 6]]


查看完整回答
反對 回復 2021-06-01
  • 3 回答
  • 0 關注
  • 287 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號