首页 > 其他分享 >实验二 字符串和列表

实验二 字符串和列表

时间:2023-03-27 20:40:30浏览次数:40  
标签:%- 10 product len 列表 print 实验 字符串 10s

task1

源代码

# 字符串基本操作
x = 'nba FIFA'
print(x.upper())  # 转大写
print(x.lower())  # 转小写
print(x.swapcase())  # 大小写翻转
print()

x = 'abc'
print(x.center(10, '*'))  # 字符串居中,宽度10列,不足左右补写*号
print(x.ljust(10, '*'))  # 字符串居左,宽度10列,不足右边补*号
print(x.rjust(10, '*'))  # 字符串居右,宽度10列,不足左边补*号
print()

x = '123'
print(x.zfill(10))  # 字符串宽度10列,不足左边用0填充
x = 123
print(str(x).zfill(10))
print()

x = 'phone_number'
print(x.isidentifier())  # 判断字符串是否是python合法标识符
x = '222test'
print(x.isidentifier())
print()

x = ' '
print(x.isspace())  # 判断字符串是否是空白符(包括空格,回车,Tab键)
x = '\n'
print(x.isspace())
print()

x = 'python is fun'
table = x.maketrans('thon', '1234')  # 为字符串对象x创建一个字符映射表,字符thon分别映射到字符1234
print(x.translate(table))  # 根据字符映射表table对字符串对象x中的字符进行转换

 结果

task2

源代码

# 列表,格式化,类型转换
x = [5, 11, 9, 7, 42]
print('整数输出1:', end='')
i = 0
while i < len(x):
    print(x[i], end='')
    i += 1

print('\n整数输出2:', end='')
i = 0
while i < len(x):
    print(f'{x[i]:02d}', end='-')  # 每个整数宽度占2列;不足2列,左边补0
    i += 1

print('\n整数输出3', end='')
i = 0
while i < len(x) - 1:
    print(f'{x[i]:02d}', end='-')
    i += 1
print(f'{x[-1]:02d}')

print('\n字符输出1:', end='')
y1 = []
i = 0
while i < len(x):
    y1.append(str(x[i]))
    i += 1
print('-'.join(y1))


print('字符输出2:', end='')
y2 = []
i = 0
while i < len(x):
    y2.append(str(x[i]).zfill(2))
    i += 1
print('-'.join(y2))

 结果2-1

结果2-2 x = [1, 9, 8, 4, 2, 0, 49]

task3

源代码

# 把姓名转换成大写,遍历分行输出
name_list = ['david bowie', 'louis armstrong', 'leonard cohen', 'bob dylan', 'cocteau twins']

# 方法1
i = 0
while i < len(name_list):
    print(name_list[i].title())
    i += 1
print()

# 方法2
t = []
i = 0
while i < len(name_list):
    t.append(name_list[i].title())
    i += 1
print('\n'.join(t))

 结果

task4

源代码

name_list = ['david bowie', 'louis armstrong', 'leonard cohen', 'bob dylan', 'cocteau twins']
n = sorted(name_list)
i = 0
while i < len(n):

    print(f'{i+1}. {n[i].title()}')
    i += 1

 结果

task5

源代码

text = '''The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
'''
lines = len(text.split('\n'))
words = len(text.split())
cha = len(text)
space = text.count(' ')
print(f'行数:{lines}')
print(f'单词数:{words}')
print(f'字符数:{cha}')
print(f'空格数:{space}')

 结果

tip: split()分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等

task6

源代码

# 图书列表中每行信息: 书名、作者、译者、出版社
# 如果是国内作者,则译者字段为空串
book_list = [['静静的顿河','肖洛霍夫','金人', '人民文学出版社'],
             ['大地之上','罗欣顿.米斯特里','张亦琦', '天地出版社'],
             ['夜航西飞', '柏瑞尔.马卡姆', '陶立夏', '人民文学出版社'],
             ['来自民间的叛逆', '袁越', '','新星出版社'],
             ['科技与恶的距离', '珍妮.克里曼', ' 詹蕎語', '墨刻出版社'],
             ['灯塔','克里斯多夫.夏布特','吕俊君','北京联合出版公司'],
             ['小行星掉在下午','沈大成', '', '广西师范大学出版社']]
print(f'{"图书信息":*^60}')
i = 0
while i < len(book_list):
    print(i+1, end='.')
    print('|'.join(book_list[i]))
    i += 1

 结果

tips:想要不自动进行换行操作的方法:将end参数设置为空 end =’‘

 

task7

源代码

data = ['99 81 75', '30 42 90 87', '69 50 96 77 89 93', '82 99 78 100']
data2 = []
i = 0
while i < len(data):
    x = data[i].split()
    data2 += x
    i += 1
s = sum(int(num) for num in data2)
print(f'{s / len(data2):.2f}')

 结果

 

task8

源代码

words_sensitive_list = ['张三', 'V字仇杀队', '杀']
comments_list = ['张三因生命受到威胁正当防卫导致过失杀人,经辩护律师努力,张三不需负刑事责任。', '电影<V字仇杀队>从豆瓣下架了', '娱乐至死']
ans = '\n'.join(comments_list)
for i in words_sensitive_list:
    j = str(i)
    if j in ans:
        ans = ans.replace(j, '*'*len(j))
    else:
        ans
print(ans)

结果

 

task9-1

源代码

"""
家用电器销售系统
v1.1
"""

#欢迎信息
print('欢迎使用家用电器销售系统!')
#产品信息列表
print('产品和价格信息如下:')
print('*********************************************************')
print('%-10s'%'编号','%-10s'%'名称','%-10s'%'品牌','%-10s'%'价格','%-10s'%'库存数量')
print('---------------------------------------------------------------------')
print('%-10s'%'0001','%-10s'%'电视机','%-10s'%'海尔','%-10.2f'%5999.00,'%10d'%20)
print('%-10s'%'0002','%-10s'%'冰箱','%-10s'%'西门子','%-10.2f'%6998.00,'%10d'%15)
print('%-10s'%'0003','%-10s'%'洗衣机','%-10s'%'小天鹅','%-10.2f'%1999.00,'%10d'%10)
print('%-10s'%'0004','%-10s'%'空调','%-10s'%'格力','%-10.2f'%3900.00,'%10d'%0)
print('%-10s'%'0005','%-10s'%'热水器','%-10s'%'美的','%-10.2f'%688.00,'%10d'%30)
print('%-10s'%'0006','%-10s'%'笔记本','%-10s'%'联想','%-10.2f'%5699.00,'%10d'%10)
print('%-10s'%'0007','%-10s'%'微波炉','%-10s'%'苏泊尔','%-10.2f'%480.00,'%10d'%33)
print('%-10s'%'0008','%-10s'%'投影仪','%-10s'%'松下','%-10.2f'%1250.00,'%10d'%12)
print('%-10s'%'0009','%-10s'%'吸尘器','%-10s'%'飞利浦','%-10.2f'%999.00,'%10d'%9)
print('-----------------------------------------------------------------------')

#商品数据
product=[
   ['0001','电视机','海尔',5999.00,20],
   ['0002','冰箱','西门子',6998.00,15],
   ['0003','洗衣机','小天鹅',1999.00,10],
   ['0004','空调','格力',3900.00,0],
   ['0005','热水器','格力',688.00,30],
   ['0006','笔记本','联想',5699.00,10],
   ['0007','微波炉','苏泊尔',480.00,33],
   ['0008','投影仪','松下',1250.00,12],
   ['0009','吸尘器','飞利浦',999.00,9],
]


#用户输入信息
product_id = int(input('请输入您要购买的产品编号:'))
count = int(input('请输入您要购买的产品数量:'))

#获取编号对应商品的信息
product_index = product_id - 1
product = product[product_index]

#计算金额
print('购买成功,您需要支付',product[3] * count,'元')
#退出系统
print("谢谢您的光临,下次再见!")

 结果

task9-2

源代码

#商品数据
product=[
   ['0001','电视机','海尔',5999.00,20],
   ['0002','冰箱','西门子',6998.00,15],
   ['0003','洗衣机','小天鹅',1999.00,10],
   ['0004','空调','格力',3900.00,0],
   ['0005','热水器','格力',688.00,30],
   ['0006','笔记本','联想',5699.00,10],
   ['0007','微波炉','苏泊尔',480.00,33],
   ['0008','投影仪','松下',1250.00,12],
   ['0009','吸尘器','飞利浦',999.00,9],
]
"""
家用电器销售系统
v1.1
"""

#欢迎信息
print('欢迎使用家用电器销售系统!')

#产品信息列表
print('产品和价格信息如下:')
print('*********************************************************')
print(f'{"编号":10}{"名称":10}{"品牌":10}{"价格":10}{"库存数量":10}')
for i in product:
    print(f'{i[0]:10}{i[1]:10}{i[2]:10}{i[3]:10}{i[4]:10}')
print('-----------------------------------------------------------------------')
#用户输入信息
product_id = int(input('请输入您要购买的产品编号:'))
count = int(input('请输入您要购买的产品数量:'))

#获取编号对应商品的信息
product_index = product_id - 1
product = product[product_index]

#计算金额
print('购买成功,您需要支付',product[3] * count,'元')
#退出系统
print("谢谢您的光临,下次再见!")

 结果

 

实验总结:

1.split()分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等

2.想要不自动进行换行操作的方法:将end参数设置为空 end =’‘

3.str.replace(old, new)(运用时需将列表转化为字符串)

 

标签:%-,10,product,len,列表,print,实验,字符串,10s
From: https://www.cnblogs.com/tyy2004/p/17262752.html

相关文章

  • 实验二
    1x='nbaFIFA'2print(x.upper())3print(x.lower())4print(x.swapcase())5print()67x='abc'8print(x.center(10,'*'))9print(x.ljust(10,'*......
  • 实验2
    task1.pyx='nbaFIFA'print(x.upper())print(x.lower())print(x.swapcase())print()x='abc'print(x.center(10,'*'))print(x.ljust(10,'*'))print(x.rjust(10,'......
  • 1047. 删除字符串中的所有相邻重复项
    给出由小写字母组成的字符串S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在S上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回......
  • 实验二
    task1源代码#字符串的基础操作x='nbaFIFA'print(x.upper())#字符串转大写print(x.lower())#字符串转小写print(x.swapcase())#字符串大小写翻转print()x......
  • Python字符串学习
    if__name__=="__main__"是Python中常见的代码块,通常用于控制Python程序的执行流程。这个代码块可以保证一些特定的代码仅在当前模块被直接执行时运行,而不会在模块......
  • 实验2 字符串和列表
    1.试验任务11x='nbaFIFA'2print(x.upper())#字符串转大写3print(x.lower())#字符串转小写4print(x.swapcase())#字符串大小写互换5print()6......
  • HTML 列表
    <ul><li>默认的无序列表加"实心园"<li>默认的无序列表"实心园"<li>默认的无序列表"实心园"</ul><ul><litype=square>无序列表square加方块<litype=square......
  • 实验二 字符串和列表
    任务一源代码:1#字符串的基础操作2#课堂上没有演示的一些方法34x='nbaFIFA'5print(x.upper())#字符串转大写6print(x.lower())#字符串转小......
  • 实验2 字符串和列表
    一、实验任务1.实验任务1程序源代码:x='nbaFIFA'print(x.upper())print(x.lower())print(x.swapcase())print()x='abc'print(x.center(10,"*"))print(x.ljus......
  • 实验一 密码引擎-2-电子钥匙功能测试
    生成证书解压"资源"中“龙脉密码钥匙驱动实例工具等”压缩包在Ubuntu中运行“龙脉密码钥匙驱动实例工具等\mToken-GM3000\skf\samples\linux_mac”中例程,提交运行结果......