私はこのようなことをしようとしています。問題は、それを行うループを構築できないことです。

これが私のコードです:
import parallel
import time
p=parallel.Parallel() #object to use the parallel port
print ("Enter a string of numbers: ")
numStr = raw_input() #read line
numList=list(numSTr) #converts string to list
numlen=len(numList) #the length of the list
numBin=[['1','0001'], ['2','0010'],
['4','0100'], ['5','0101'],
['6','0110'], ['7','0111'],
['8','1000'], ['9','1001'],
['3','0011'], ['0','0000']] #Less significant bits of the numbers from 0 to 9 in a bidimesional array
p.setData(0) #clear the displays
pos=['0001','0010','0100','1000'] #Unique possible positions for the number from 0 to 9.
c=(str(pos[])+str((numBin[][1]))) #here if the number in the list numList exist and also is in numBin. It joins the position and the number in binary, creating an number that will be send in decimal to the parallel port.
p.setData(int(c,2)) #send the binary number in decimal
誰かが私を助けることができれば、それは満足のいくものになるでしょう
numBinにある最上位ビットは、オンにするディスプレイを定義します。そして、それほど重要ではないものが数を定義します。例えば:
文字列は{'7'、 '1'、 '5'、 '4'、'8'}です。したがって、最後の表示に表示される最初の数字は「7」です。したがって、「0111」であるバイナリ7を取得し、そのバイナリ文字列を「0001」である最初の表示位置に結合します。したがって、2進数「00010111」を作成します。その数値を10進数に変換し、パラレルポートに送信します。パラレルポートはlasディスプレイをオンにし、番号7を表示します。2回目は、2番目と1番目の位置に「7」と「1」を表示する必要があります。
X X X X
X X X 7
X X 7 1
X 7 1 5
7 1 5 4
1 5 4 8
5 4 8 X
4 8 X X
8 X X X
X X X X
「X」はディスプレイがオフであることを表し、数字は回路でわかるようにディスプレイ位置にあることを表します。