最近在学习百度飞浆和EasyDL,使用python语言。我自己的python编程能力不强,所以参加了一个针对python应用于AI的课程,为期七天,每天都有作业。在这我会记录一下作业的内容,和一些python知识点和大家分享。有什么不对的地方,希望大家批评指正。
1.作业一:输出 9*9 乘法口诀表(注意格式)
代码:
def table():
#使用range函数和两层for输出
for i in range(1,10):
for j in range(1,i):
print('%d * %d = %d'%(j,i,j*i),end = '\t')
print('\n')
if __name__ == '__main__':
table()
运行结果:
1 * 2 = 2
1 * 3 = 3 2 * 3 = 6
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72
2.作业二:查找特定名称文件
遍历”Day1-homework”目录下文件;找到文件名包含“2020”的文件;将文件名保存到数组result中;按照序号、文件名分行打印输出。
代码:
#导入OS模块
import os
#待搜索的目录路径
path = "Day1-homework"
#待搜索的名称
filename = "2020"
#定义保存结果的数组
result = []
def findfiles():
#在这里写下您的查找文件代码吧!
#root 所指的是当前正在遍历的这个文件夹的本身的地址
#dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
#files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
for root,dirs,flies in os.walk(path):
for name in flies:
if filename in name:
result.append(os.path.join(root,name))
for i in range(len(result)):
print('%d , %s'%(i+1,result[i]))
if __name__ == '__main__':
findfiles()
运行结果:
1 , Day1-homework/18/182020.doc
2 , Day1-homework/4/22/04:22:2020.txt
3 , Day1-homework/26/26/new2020.txt
1.range函数常见用法
函数原型:range(start, end, scan):
参数含义:
start:计数从start开始。默认是从0开始。
end:计数到end结束,但不包括end.例如。
scan:每次跳跃的间距,即步长,默认为1。
例子:
>>> range(0,4,1)
[0,1,2,3]
>>> range(0,4) #默认步长为1,输出和上面一样
[0,1,2,3]
>>> range(4) #默认从0开始,所以输出也和上面一样
[0,1,2,3]
>>> range(0,4,2) #步长为2,则输出0,0+2,0+2+2....
[0,2]
2.python的os.walk()方法
os.walk() 方法用于通过在目录树中游走输出在目录中的文件名,向上或者向下。
语法格式:
os.walk(top)
top 是你所要遍历的目录的地址, 返回的是一个三元组(root,dirs,files)。
root 所指的是当前正在遍历的这个文件夹的本身的地址
dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
假设top地址文件夹下只有文件夹a和文件夹a中的文件b,dirs即为文件夹a的路径,files即为文件b的路径。
更加详细可参考:
https://www.runoob.com/python/os-walk.html?tdsourcetag=s_pctim_aiomsg