2

listA.extend(listB) を使用して連結している 2 つのリストがあります。

listA を拡張するときに達成する必要があるのは、listA の最後の要素を listB の最初の要素と連結することです。

私のリストの例は以下の通りです

リストAの終わり= ... '1633437.0413', '5417978.6108', '1633433.2865', '54']

リスト B の開始 =['79770.3904', '1633434.364', '5417983.127', '1633435.2672', ...

明らかに、私が拡張すると、以下が得られます(54に注意してください)

'5417978.6108', '1633433.2865', '54', '79770.3904', '1633434.364', '5417983.127

以下は、最後の要素と最初の要素が連結されている場所で達成したいことです

[...5417978.6108', '1633433.2865', '*5479770.3904*', '1633434.364', '5417983.127...]

何か案は?

4

3 に答える 3

2
newlist = listA[:-1] + [listA[-1] + listB[0]] + listB[1:]

または listA を「インプレース」で拡張したい場合

listA[-1:] = [listA[-1] + listB[0]] + listB[1:]
于 2013-05-14T10:26:56.963 に答える
0

リスト内包表記を使用したワンライナー(実際にはリスト内包表記のためです:)):

[(x + listB[0]) if i == len(listA) - 1 else x for i, x in enumerate(listA)] + listB[1:]
于 2013-05-14T10:29:37.230 に答える