实验2 字符串和列表

实验1

x=list(range(10))

print('整数输出1:', end='')
for i in x:
    print(i,end='')

print('\n整数输出2:',end='')
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))

 

实验2

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))

 

实验3

name_list = ['david bowie', 'louis armstrong', 'leonard cohen', 'bob dylan', 'cocteau twins']
list2=sorted(name_list)
for i in range(1,6):
    print(f'{i}.{list2[i-1].title()}')

 

实验4

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!'''


a=len(text.splitlines())
b=len(text.split())
c=len(text)
d=text.count(' ')
print('行数:',a)
print('单词数:',b)
print('字符数:',c)
print('空格数:',d)

 

实验5

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

 

实验6

'''
某.csv格式数据文件内数据如下:
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']

s=0
p=0
i=0
while i <len(data):
    z=data[i].split()
    b=len(z)
    s+=b
    i+=1
for i in data:
    q=i.split()
    for m in q:
        p+=eval(m)     
c=p/s
print('{:.2f}'.format(c))

 

实验7

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

总结:

1. 复习并熟悉了列表中列表推导式,格式化,类型转换,切片索引等。

熟悉了大小写函数和按照字典排序的函数,使用控制语句for、while对里列表、字符串的的遍历。

实现三引号进行多行文本输出。

对于二维列表也知道如何进行处理,对应输出。

了解了如何用列表进行替换 i.replace( )函数

2. 针对具体问题场景,能够灵活、组合使用字符串、列表、控制语句编程解决实际问题。

3.实验过程中仍出现了多次死循环,缩进错误的问题。希望下次实验中可以最大限度避免该问题,编写代码是更具有逻辑性。

4.仍存在的问题:对sum函数的使用环境存在疑问。

 

 

posted @ 2022-04-11 15:03  Embeddd  阅读(13)  评论(3编辑  收藏  举报