pythonのバイナリ変換スタックを実現
1 #- * -コード:UTF-8 - * - 2 ''」 3 stack.py.py 4 2019年11月7日9:05に作成 5 著作権(C)2019年11月7日、singsongがあります。 6 @author:SunSong 7 ''」 8 9 クラススタック: 10 DEF __init__ (自己): 11 self.items = [] 12 DEF (自己、項目)をプッシュ: 13 self.items.append(アイテム) 14が デフポップ(自己): 15 リターンself.items.pop() 16 17 デフPEEK(自己): 18は 戻り self.items [lenは(self.items)-1 ] 。19 20れる IF __name__ == ' __main__ ' : 21であり、 22は 23である my_stack_num = スタック() 24 "" " 25 A:10進数 26はである B:必要いくつかの小数に変換する。 27 "" " 28 DEF 試験(A、B): 29 しばらく(A!= 0): 30 C = A%のB 31は、 A = A // B 32 33であり、 34は #印刷(「A = S%で、B = D%「%(A、C)) 35 my_stack_num.push(C) 36 #プリント(my_stack_num.items .__ LEN __()) 37 リスト= [] 38 ながら(my_stack_num.items。__len__()> 0): 39 プリント(' my_stack_num.items%S '%(my_stack_num .items)) 40 プリント(' LEN%D '%(my_stack_num.items。__len__ ())) 41 42 list.append(my_stack_num.pop()) 43 プリント(' リスト' 、リスト) 44 #リストは、文字列になりますが、番号のリストがあるの内側には、最初の数は、文字列に変換され、場合変更する必要があります。 45 リターン "" .join(' %S '%ID のための ID でリスト) 46である #1348進数に進10。 47 プリント(テスト(1348,8))