您的当前位置:首页正文

人工智能:Python-Jupyter数据结构02_作业02

2024-12-02 来源:个人技术集锦

T1.定义一个列表,并按照降序排序

my_list = [1,2,6,3,7]

# reverse=True : 表示降序,默认不写的话表示升序
#函数sort()是对列表排序

my_list.sort(reverse=True)

print(my_list)

[7, 6, 3, 2, 1]

T2.判断是否为偶数(分别用普通函数和匿名函数实现)

返回值为:True or False

# 普通函数

def is_os(num):

if num % 2 == 0:

return True

else:

return False

print(is_os(8))



# 匿名函数

f = lambda num:True if num % 2 == 0 else False

re = f(2)

print(re)

True

T3.如何使用匿名函数对字典中的列表进行排序

源数据:[{'name':'zs','age':20},{'name':'ls','age':19}]

结果:[{'name': 'ls', 'age': 19}, {'name': 'zs', 'age': 20}]

my_list = [{'name':'zs','age':20},{'name':'ls','age':19}]

my_list.sort(key=lambda item: item['age'], reverse=True)

print(my_list)



def get_value(item):

return item['age']



my_list.sort(key=get_value, reverse=True)

print(my_list)

[{'name': 'zs', 'age': 20}, {'name': 'ls', 'age': 19}]

T4.利用Python进行文件拷贝

# 打开两个文件( 源文件,目标文件)

old_file = open('./source.txt', 'rb')

new_file = open('./target.txt', 'wb')



# 文件操作

while True:

# 1024 : 读取1024字节的数据

file_data = old_file.read(1024)

# 判断数据是否读取完成

if len(file_data) == 0:

break

new_file.write(file_data)



# 关闭文件

old_file.close()

new_file.close()

T5.面向对象的三大特征?

T6.定义类class为Book,定义__init__函数和 自定义函数举例如: you(),info()

1)__init__中,需要默认书籍名称,价格,作者 例如name = "爵迹",price="39",author="郭敬明"

2)定义实例方法you(),使用输出以下字样%s为书籍名称 "努力学习%s图书"

3)定义实例方法info():打印书的详细信息 "书籍名称:%s,价格:%s,作者:%s"

4)定义一个子类,继承Book类 类名:BookZi, BookZi中不定义任何函数, pass

5)定义父类创建对象 并调用you(),__init__()方法

6)定义子类创建对象 并调用info方法


class Book():

def __init__(self, name = '爵迹', price = '39', author = '郭敬明'):

self.name = name

self.price = price

self.author = author

def you(self):

print('努力学习%s图书' % self.name)

def info(self):

print('书籍名称:%s,价格:%s,作者:%s' %(self.name, self.price, self.author))



class BookZi(Book):

pass



book = Book()

book.you()

book.__init__()



boozi = BookZi()

boozi.info()

努力学习爵迹图书
书籍名称:爵迹,价格:39,作者:郭敬明

T7.使用正则表达式匹配全部字符串进行输出

源数据:abc 123 def

结果:abc 123 def



import re

str2 = 'abc 123 def'

print(re.match('^abc\s\d\d\d\sdef$', str2).group())

print(re.match('^abc\s\d{3}\sdef$', str2).group())



print(re.match('^abc\s.*\sdef$', str2).group())



print(re.match('^abc\s(.*)\sdef$', str2).group())

abc 123 def
abc 123 def
abc 123 def
abc 123 def

T8.使用正则表达式中 sub 实现获取我们匹配的字符串,然后追加指定字符

源数据:hello 7709 badou

结果:hello 7709 789 badou



import re

content = 'hello 7709 badou'

content = re.sub('(\d+)', r'\1 789', content)

print(content)

hello 7709 789 badou

如有纰漏之处,请留言指教,非常感谢

以上就是本期全部内容。我是写代码的丸叽~ ,有问题大家随时留言讨论 ,我们下期见~

显示全文