Re: [問題]沒頭緒的一個問題...
※ 引述《apua (Apua)》之銘言:
: # 以下使用python2.x的語法
: str=raw_input("string:") # 假設為abc
: pos=raw_input("possition:") # 假設為312
: z = zip(str,pos)
: # ^^^^^^^^^^^
: # z會是一個list,它的元素是pos對應str的tuple如下:
: # [('a', '3'), ('b', '1'), ('c', '2')]
: z.sort(key= (lambda key:key[1]) )
: # ^^^^^^^^^^^^^^^^^^^
: # key需要一組函數做排序的條件,也就是上面標記的部份
: # 而被該函數引入的key就是z的每一個元素
: # 所以最後z的排序結果會依據['3','1','2']的排序結果
: print "".join([s[0] for s in z])
: # 將z最後排序的結果抽出來並合併
試著用3.12的方式寫寫看
st=input("string:")
pos=input("possition:")
z = list(zip(st,pos))
# 指定z是list
z.sort(key= (lambda key:key[1]) )
print ("".join([s[0] for s in z]))
小弟之前自己用了一個方法:
a='abc'
n=[3,1,2]
b=''
for i in range(1,len(n)+1):
c=n.index(i)
b=b+a[c:c+1]
不過只要重覆執行很多次就會很久....
--
未來週記
就算到未來,我還是要騙你們!
http://www.wretch.cc/blog/billypan101/15973147
http://www.wretch.cc/blog/billypan101/15991922
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.117.194.168
討論串 (同標題文章)
Python 近期熱門文章
PTT數位生活區 即時熱門文章