鱼C论坛

 找回密码
 立即注册
查看: 1325|回复: 0

[技术交流] 字符串打印

[复制链接]
发表于 2020-5-10 09:20:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#coding = utf-8
def printf_head():
    '''
    +----------+-------+
    |item      |data   |
    +----------+-------+
    '''
    name_width = 30
    data_width = 10
    name_str = ' Item'
    data_str = ' Data'
    name_strlen = len(name_str)
    data_strlen = len(data_str)
    if name_strlen >= name_width:
        name_str = name_str[:name_width]
    else:
        filling_name = name_width - name_strlen
    if data_strlen >= data_width:
        data_str = data_str[:data_width]
    else:
        filling_data = data_width - data_strlen
    print('+{0}+{1}+'.format('-'*name_width,'-'*data_width))
    print('|{na}{nlen}|{da}{dlen}|'.format(na=name_str,nlen=' '*filling_name,
    da=data_str,dlen=' '*filling_data))
    print('+{0}+{1}+'.format('-'*name_width,'-'*data_width))
    
def printf_data(name_str,data_str):
    '''
    |          |       |
    '''
    name_width = 30
    data_width = 10
    #add str 'spaces'
    name_str = ' '+name_str
    data_str = ' '+data_str
    name_strlen = len(name_str)
    data_strlen = len(data_str)
    if name_strlen >= name_width:
        name_str = name_str[:name_width]
        filling_name = name_width - name_strlen
    else:
        filling_name = name_width - name_strlen
    if data_strlen >= data_width:
        data_str = data_str[:data_width]
        filling_data = data_width - data_strlen
    else:
        filling_data = data_width - data_strlen
    print('|{na}{nlen}|{da}{dlen}|'.format(na=name_str,nlen=' '*filling_name,
    da=data_str,dlen=' '*filling_data))
    
def printf_end():
    '''
    +----------+-------+
    '''
    name_width = 30
    data_width = 10
    print('+{0}+{1}+'.format('-'*name_width,'-'*data_width))
    

# name = input('Please input string:')
# data = input('Please input data:')
printf_head()
name = ['gin','lsp','dhg','ht','lnn']
data = (170,160,165,172,170)
for x,j in zip(name,data):
    printf_data(x,str(j))
printf_end()
+------------------------------+----------+
| Item                         | Data     |
+------------------------------+----------+
| gin                          | 170      |
| lsp                          | 160      |
| dhg                          | 165      |
| ht                           | 172      |
| lnn                          | 170      |
+------------------------------+----------+

请按任意键继续. . .
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-27 06:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表