Python で 7 セグメント ディスプレイ エミュレーターを作成中ですが、小さな問題が発生しました。私が行ったことは、文字を表す一連の数字を持つ各数字のリストを作成することです.["000", "001", "000", "001", "000"]
これは数字1を表し、0はスペース、1はパイプ文字(|)、2はダッシュです.
これは幅 1 で問題なく動作しますが、任意の幅に移動できるようにしたいと考えています。文字数に幅を掛けてこれを試してみました。たとえば、幅が2の数字の1は次のようになります["000000", "000011", "000000", "000011", "000000"]
私が抱えている問題は、パイプ文字に遭遇すると、その下ではなく同じ行に印刷されることです。そのように '| |' いつのようになるべきか
| |
| |
を使用して新しい行に印刷しようとしまし\n
たが、これにより他のすべてが台無しになります。
これをより良い方法で行う方法、または私の問題を解決する方法についての提案をいただければ幸いです。
これが私のコードです。
uno = ["000", "001", "000", "001", "000"]
temp = ""
width = 2
for line in uno:
temp = ""
for char in line:
temp += char * width
temp = temp.replace('0', ' ').replace("1", "|").replace('2', '-')
print(temp)
出力例
||
||
必要な出力
|
|
|
|
ありがとう