繁体   English   中英

如何按给定数字查找和打印属性的内容?

[英]how can I find and print the content of an attribute by a given number?

所以程序是这样工作的,我需要输入一个数字,一旦我的程序识别出类中的数字,它就会以 LCD 格式打印给定的数字。

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 的一种奇怪方式,但显然它不起作用。 在最后一个循环中,我尝试为属性中的每个对象打印该空间,这样数字就会正确打印。 我将不胜感激任何帮助。

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)

输出:

   _  _       _   _  _   _   _   _ 
|  _| _| |_| |_  |_   | |_| |_| | |
| |_  _|   |  _| |_|  | |_|  _| |_|

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM