实验2 字符串和列表

for i in x:
    print(f'{i:02d}', end = '-')

print('\n整数输出3: ', end = '')
for i in x[:-1]:
    print(f'{i:02d}', end = '-')
print(f'{x[-1]:02d}')

print('\n字符输出1: ', end = '')
y1 = [str(i) for i in range(10)]
print('-'.join(y1))

print('字符输出2: ', end = '')
y2 = [str(i).zfill(2) for i in range(10)]
print('-'.join(y2))
实验1总结:
学会了

print(f'{i:02d}', end = '-') # 指定每个整数输出宽度占两列,不足两列,左边补0

[str(i) for i in range(10)] # 函数str()用于把其它类型对象转换成字符串对象

[str(i).zfill(2) for i in range(10)] # 方法.zfill()用于对字符串进行格式化,
指定宽度为2列,不足左边补0

name_list = ['david bowie', 'louis armstrong', 'leonard cohen', 'bob dylan','cocteau twins']
for name in name_list:
    print(name.title())
print()
name_list_captilize = [name.title() for name in name_list]
print('\n'.join(name_list_captilize))

实验2 总结:对于列表中首字母大写时可以采用:name.title()的形式也可以用:name.title() for in的形式

name_list = ['david bowie', 'louis armstrong', 'leonard cohen', 'bob dylan','cocteau twins']
name_list_captilize = [name.title() for name in name_list]
name_list_captilize.sort()
for index,name in enumerate(name_list_captilize):
    print(index+1,name)

实验3 总结:学会了index的用法 用以排序

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!'''
linenum=0
letternum=0
strinum=0
spacenum=0
linenum=text.count('\n')+1
print(f'行数是:{linenum}')
for i in text:
    if i==' ':
        spacenum+=1

print(f'单词数是:{len(text.split())}')
print(f'字符数是:{len(text)}')
print(f'空格数是:{spacenum}')


实验4 总结:很巧妙的一点是关于行数的计算可以运用到换行符的个数的统计,关于每个单词可以用空格作为切片的依据,其余可以考虑用遍历或者循环来判断

book_list = [['静静的顿河','肖洛霍夫','金人', '人民文学出版社'],
['大地之上','罗欣顿.米斯特里','张亦琦', '天地出版社'],
['夜航西飞', '柏瑞尔.马卡姆', '陶立夏', '人民文学出版社'],
['来自民间的叛逆', '袁越', '','新星出版社'],
['科技与恶的距离', '珍妮.克里曼', ' 詹蕎語', '墨刻出版社'],
['灯塔','克里斯多夫.夏布特','吕俊君','北京联合出版公司'],
['小行星掉在下午','沈大成', '', '广西师范大学出版社']]
for index,book in enumerate(book_list):
    print(f'{index+1}.《{book[0]}》|{book[1]}|{book[3]}')
    print( )

实验5总结:灵活使用index函数来排序即对应的是for index,x in enumerate(某个列表) 输出是print(index+1,x)

根据输出的需要安排输出的内容,注意输出的结果

"""99 81 75
30 42 90 87
69 50 96 77 89, 93
82, 99, 78, 100
"""
data = ['99 81 75', '30 42 90 87', '69 50 96 77 89 93', '82 99 78 100']
c=0
n=0
for i in data:
    for b in i.split():
        c=c+int(b)
        n+=1
a=c/n
print('%4.2f' % a)



实验6总结:回忆了关于保留小数、精度的问题,同时可以结合保留字段的学习来输出

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

实验7总结:学会了用以替代关键字的方法,需要遍历,同时需要控制次数。

posted @ 2022-04-06 20:47  苏萌0017  阅读(48)  评论(2编辑  收藏  举报