所以程式是這樣作業的,我需要輸入一個數字,一旦我的程式識別出類中的數字,它就會以 LCD 格式(7 段顯示)列印給定的數字。
class lcd:
def numbers():
0 = ["_","| |","_"]
1 = ["|","|","|"]
2 = ["_","_|","|_"]
3 = ["_","_|","_|"]
4 = ["|_|"," |"]
5 = ["_","|_"," _|"]
6 = ["_","|_","|_|"]
7 = ["_"," |"," |"]
8 = ["_","|_|","|_|"]
9 = [" _","|_|"," _|"]
def numgen(num):
print("Type the number you want to print in LCD: ")
num = lcd()
for i in range (lcd):
if hasattr(num,'numbers'):
for i in range (3):
print("\n")
return
if __name__ == '__main__':
num = int(input())
numgen()
print(num)
問題是我不知道如何繼續,我一直在閱讀一些函式,但它們都不起作用。我嘗試過,因為你可以看到 hasattr 的一種奇怪方式,但顯然它不起作用。在最后一個回圈中,我嘗試為屬性中的每個物件列印該空間,這樣數字就會正確列印。我將不勝感激任何幫助。
uj5u.com熱心網友回復:
IIUC,您想以 LCD 格式(或者更確切地說是 7 段)列印數字。
這是它的最小代碼。最重要的部分是zip用于構建線條。
注意。我不得不修正你不正確的數欄位。
digits = {
0 : [" _ ","| |","|_|"],
1 : [" ","|","|"],
2 : [" _ "," _|","|_ "],
3 : ["_ ","_|","_|"],
4 : [" ", "|_|"," |"],
5 : [" _ ","|_ "," _|"],
6 : [" _ ","|_ ","|_|"],
7 : ["_ "," |"," |"],
8 : [" _ ","|_|","|_|"],
9 : [" _ ","|_|"," _|"],}
def print_num(num):
parts = [digits[int(d)] for d in str(num)]
print('\n'.join(' '.join(line) for line in zip(*parts)))
print_num(1234567890)
輸出:
_ _ _ _ _ _ _ _
| _| _| |_| |_ |_ | |_| |_| | |
| |_ _| | _| |_| | |_| _| |_|
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/356488.html
