1 回答

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超8個贊
我認(rèn)為有一種更優(yōu)雅的方式來寫這個。我還沒有找到時(shí)間來獲取這個。所以這里有一個快速但骯臟的版本,但仍然對你有用。
x = [['black', 'sugar', 'second', 'dog'],
['red', 'cane', 'five', 'pig'],
['black', 'sugar', 'first', 'cat'],
['pink', 'cute', 'one', 'snake'],
['pink', 'angry', 'one', 'donkey'],
['black', 'sugar', 'third', 'bird'],
['red', 'cane', 'five', 'monkey'],
['pink', 'angry', 'one', 'spider']]
x.sort()
print (x[0][0])
print (' ' + x[0][1])
print (' 1 ' + x[0][2])
print (' 1a '+x[0][3])
level_2 = 1
level_3 = 'a'
for i,a in enumerate(x[1:]):
if a[0] == x[i][0]:
if a[1] == x[i][1]:
if a[2] == x[i][2]:
level_3 = chr(ord(level_3) + 1)
else:
level_2 +=1
level_3 = 'a'
print (' ' + str(level_2) + ' ' + a[2])
else:
level_2 +=1
level_3 = 'a'
print (' ' + a[1])
print (' ' + str(level_2) + ' ' + a[2])
else:
level_2 +=1
level_3 = 'a'
print (a[0])
print (' ' + a[1])
print (' ' + str(level_2) + ' ' + a[2])
print (' ' + str(level_2) + level_3 + ' ' + a[3])
其輸出是:
black
sugar
1 first
1a cat
2 second
2a dog
3 third
3a bird
pink
angry
4 one
4a donkey
4b spider
cute
5 one
5a snake
red
cane
6 five
6a monkey
6b pig
- 1 回答
- 0 關(guān)注
- 146 瀏覽
添加回答
舉報(bào)