字符的格式化
# 请实现一个程序,实现如下需求点:
# 1.程序开始的时候提示用户输入学生年龄信息 格式如下:
# Mike Mos,9;Jack Green ,21
# 我们假设 用户输入 上面的信息,必定会遵守下面的规则:
# 学生信息之间用分号隔开 (分号前后可能有不定数量的空格)
# 每个学生信息里的 姓名和 年岭之间用 逗号隔开(号前后可能有不定数量的空格)
# 2.程序随后将输入的学生信息分行显示,格式如下
# Jack Green :21;
# Mike Mos :09;
# 学生的姓名要求左对齐,宽度为20,年龄信息右对齐,宽度为2位,不足前面补零
str1='Mike Mos,9;Jack Green ,21'
#正则获取名字和年龄
import re
# 纯数字的一组
age_list=re.findall(r',(\d+)',str1)
print(age_list)# ['9', '21']
# 纯字母的单词
name_list=re.findall(r'([a-zA-Z]+)',str1)
print(name_list)
'''
['9', '21']
['Mike', 'Mos', 'Jack', 'Green']
'''
print('{0:20}:{1:>02};'.format(name1,age1))
name: Jack ;salary: 12000
name :Mike ; salary: 12300
name: Luk ;salary: 10030
name :Tim ; salary: 9000
name: John ;salary: 12000
name: Lisa;salary: 11000
import re with open('salary.txt','r',encoding='UTF-8') as files: for line in files: every = re.findall(r'(\w+)', line) name=every[1] salary=every[3] tax=int(int(salary)*(0.1)) income=int(int(salary)*(0.9)) print('name:{:8}; salay:{:>10}; tax:{:10}; income:{:10}'.format(name,salary,tax,income))
'''
name:Jack ; salay: 12000; tax: 1200; income: 10800
name:Mike ; salay: 12300; tax: 1230; income: 11070
name:Luk ; salay: 10030; tax: 1003; income: 9027
name:Tim ; salay: 9000; tax: 900; income: 8100
name:John ; salay: 12000; tax: 1200; income: 10800
name:Lisa ; salay: 11000; tax: 1100; income: 9900
'''