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

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

在 Python 中組合數組中的值

在 Python 中組合數組中的值

幕布斯6054654 2023-09-26 14:44:48
我有一個像這樣的數組:['A','B','C','D','E']。我一直在試圖弄清楚如何使它像這樣: ['AB', 'CD', 'E']我不知道從哪里開始。提前致謝!
查看完整描述

5 回答

?
萬千封印

TA貢獻1891條經驗 獲得超3個贊

main.py


a = ['A', 'B', 'C', 'D', 'E']

b = [i + j for i, j in zip(a[:-1:2], a[1::2])]

if len(a) % 2 == 1:

  b.append(a[-1])

print(b)


結果


$ python main.py

['AB', 'CD', 'E']


查看完整回答
反對 回復 2023-09-26
?
汪汪一只貓

TA貢獻1898條經驗 獲得超8個贊

>>> [''.join(a[i:i+2]) for i in range(0, len(a), 2)]

['AB', 'CD', 'E']

或者(因為我喜歡迭代器)


>>> it = iter(a)

>>> [s + next(it, '') for s in it]

['AB', 'CD', 'E']


查看完整回答
反對 回復 2023-09-26
?
MYYA

TA貢獻1868條經驗 獲得超4個贊

我認為更簡單的方法是迭代數組并連接字符,如果您有偶數長度的數組,它就可以工作,因此您可以添加檢查并在奇數長度的情況下附加最后一個元素。


array = ['A', 'B', 'C', 'D', 'E']


array2 = [f"{array[i]}{array[i+1]}" for i in range(0, len(array)-1, 2)]


if len(array)%2!=0:

    array2.append(array[-1])


print(array2)


查看完整回答
反對 回復 2023-09-26
?
揚帆大魚

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

嘗試這樣。這是非常簡單的答案,但應該有效。


my_array =  ['A', 'B', 'C', 'D', 'E']


def combine_array(my_array):

    mixed_array = []

    start_new = True

    for item in my_array:

        if start_new:

            mixed_array.append(item)

            start_new = False

        else:

            mixed_array[-1] = mixed_array[-1] + item

            start_new = True

    return mixed_array



if __name__ == "__main__":

    try:

        print(combine_array(my_array))

    except Exception as err:

        print(err)


查看完整回答
反對 回復 2023-09-26
?
呼如林

TA貢獻1798條經驗 獲得超3個贊

startArray = ['A', 'B', 'C', 'D', 'E']

currentIndex = 0

finishArray = ['']

for x in startArray:

    if len(finishArray[currentIndex]) == 2:

        currentIndex += 1

        finishArray.insert(currentIndex,x)

    else: 

        finishArray[currentIndex] += x

print(finishArray)


查看完整回答
反對 回復 2023-09-26
  • 5 回答
  • 0 關注
  • 180 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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