麻辣家族討論版版's Archiver

morris_lth 發表於 2020-9-4 11:14

Python 程式範例疑惑?

大家好, 目前正在自學python,下面的範例1很好理解
但範例2的結果誰能幫忙解釋一下為何結果不是我所想的
{ 0+0*0 , 1+1*1 , 2+2*2.....9+9*9........} = {0, 2, 6, 12, 20, 30, 42, 56, 72.....90}

EX.1
testDic = {i: i * i for i in range(10)}
print(testDic)
ANS: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

EX.2
testDxc = {i+ i * i for i in range(10)}
print(testDxc)
ANS: {0, 2, 6, 72, 42, 12, 20, 56, 90, 30}

謝謝

ikboy 發表於 2020-9-7 16:53

集合物件是無序,如果需要有序..[code]for i in range(10):
    print(i+i*i)
[/code]

morris_lth 發表於 2020-9-10 11:38

原來如此....謝謝

mlbolerud 發表於 2021-7-6 22:10

EX.1
testDic = {i: i * i for i in range(10)}
print(testDic)
ANS: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}
→ testDic資料是dict , dict是有順序的一組資料

EX.2
testDxc = {i+ i * i for i in range(10)}
print(testDxc)
ANS: {0, 2, 6, 72, 42, 12, 20, 56, 90, 30}
→ testDic資料是set , set是沒有順序的一組資料 , 所以不會照0 ~ 9算出的結果作排列

頁: [1]

麻辣家族討論版版為 麻辣學園 網站成員  由 昱得資訊工作室 © Since 1993 所提供