Python自学笔记12:实操案例九(统计字符串中出现指定字符的次数、格式化输出商品的名称和单价)

Python自学笔记12:实操案例九(统计字符串中出现指定字符的次数、格式化输出商品的名称和单价)

1.统计字符串中出现指定字符的次数
写一个函数,传入字符串和要找的字符,调用,遍历字符串,返回计数结果,用print输出即可。
在这里插入图片描述
在这里插入图片描述

def get_count(s,ch):#s是字符串,ch是要查找的字符
    count=0
    for item in s:
        if ch.upper()==item or ch.lower()==item:#大写或者小写匹配
            count=1
    return count

if __name__=='__main__':
    s='hellopython,hellojava,hellogp'
    ch=input('请输入要统计的字符:')
    count=get_count(s,ch)
    print(f'{ch}{s}中出现的次数为:{count}')

2.格式化输出商品的名称和单价
在这里插入图片描述
增添字符串长度以后,对不齐的地方就把标题栏加空格或者制表符手动对齐就行了:

def show(lst):
    for item in lst:
        for i in item:
            print(i, end='\t\t')
        print()

lst=[['01','电风扇','美的',500],
     ['02','洗衣机','TCL',1000],
     ['03','微波炉','老板',400]]
print('编号\t\t名称\t\t\t品牌\t\t单价')
show(lst)

print('———————————格式化输出字符串—————————')
print('编号\t\t名称\t\t\t品牌\t\t单价')
for item in lst:
    item[0]='0000'+item[0]
    item[3]='¥{:.2f}'.format(item[3])
show(lst)

以及,我尝试用之前万能的输出表格的方法试了一下,需要注释几个地方,多调一下格式对齐,也能实现:
在这里插入图片描述

def show(lst):
    for item in lst:
        for i in item:
            print(i, end='\t\t')
        print()

def ShowTable():
    table_titles = ['编号', '名称', '品牌', '单价']
    max_wrap = 6
    table_datas = [str('01\t\t电风扇\t美的\t\t500'), str('02\t\t洗衣机\tTCL\t\t1000'), str('03\t\t微波炉\t老板\t\t400')]
    for i in range(len(table_datas) - 1):
        if len(table_datas[i]) < max_wrap:
            #table_datas[i] = table_datas[i] + ' ' * (max_wrap - len(table_datas[i]))  # 剩余部分用空格补齐
            table_titles[i] = table_titles[i] + ' ' * (max_wrap - len(table_titles[i]))
    print('\t\t'.join(table_titles))
    #print('\t'.join(table_datas))
    for i in range(len(table_datas)):
        print(table_datas[i])

lst=[['01','电风扇','美的',500],
     ['02','洗衣机','TCL',1000],
     ['03','微波炉','老板',400]]
print('编号\t\t名称\t\t\t品牌\t\t单价')
show(lst)

print('———————————格式化输出字符串—————————')
print('编号\t\t名称\t\t\t品牌\t\t单价')
for item in lst:
    item[0]='0000'+item[0]
    item[3]='¥{:.2f}'.format(item[3])+'\n'
show(lst)

print('-----------表格输出字符串-------------')
ShowTable()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值