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

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

python 中的二維列表行為很奇怪

python 中的二維列表行為很奇怪

神不在的星期二 2023-06-27 14:06:31
我想創建一個在 python 中旋轉二維列表的函數,如下所示:輸入: [[0,1,2,3],[0,1,2,3]]輸出:[[0,0],[1,1],[2,2],[3,3]]我想首先創建一個包含占位符 None 值的列表,以便稍后可以輕松地輸入這些值。我想出了這個代碼:matrix = [[0,1,2,3],[0,1,2,3]]#debugging value, will be an argument of the function. output = []row= []for x in range(len(matrix)):    row.append(None)for x in range(len(matrix[0])):    output.append(row)因此,這為現在組織數據創建了一個很好的起點,但現在發生了一些奇怪的事情。如果我現在嘗試運行類似的東西output[0][0] = 5,輸出變量突然具有以下值: [[5, None], [5, None], [5, None], [5, None]],而這一行應該只影響列表中的第一個列表。更奇怪的是,現在臨時列表行的值為[5, None]。該行根本不應該影響該變量。我是否遺漏了什么,或者這是Python中的一個錯誤?我在 Windows 上的 Python 3.7.6 和 Linux 上的 Python 3.8.2 上嘗試過此操作。有人可以幫我解決這個問題嗎?
查看完整描述

1 回答

?
開滿天機

TA貢獻1786條經驗 獲得超13個贊

您可以使用 zip()


lst_input=[[0,1,2,3],[0,1,2,3]]


def rotate_list(lst_input):

    lst_output=[]

    for a,b in zip(lst_input[0],lst_input[1]):

        lst_output.append([a,b])

    return lst_output


print(rotate_list(lst_input))

#[[0, 0], [1, 1], [2, 2], [3, 3]]


查看完整回答
反對 回復 2023-06-27
  • 1 回答
  • 0 關注
  • 143 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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