Python小白逆袭大神(一)

Python小白逆袭大神 作业1

作业一:输出 9*9 乘法口诀表(注意格式)

思路:就是两层循环,第一层是i=1到9的循环,第二层是j=1到i的循环。输出i*j.代码如下:

def table():
    #在这里写下您的乘法口诀表代码吧!
    for i in range(1,10): #大循环9次
        str_row = ""#每一行的字符串 9行
        for j in range(1,i+1):
            str_row += "{0}*{1}={2}".format(j,i,i*j)+" "
        print(str_row)


if __name__ == '__main__':
    table()

运行结果:
Python小白逆袭大神(一)_第1张图片

作业二:查找特定名称文件
遍历”Day1-homework”目录下文件;

找到文件名包含“2020”的文件;

将文件名保存到数组result中;

按照序号、文件名分行打印输出。

思路:这里用到os.walk,要是文件都在指定的文件下面,就是没有子文件夹,可以用os.listdir函数,os.walk的用法:

import os
path = r'文件路径内容'
for dirpath,dirnames,filenames in os.walk(path):
    print(dirpath,dirnames,filenames)

这里dirpath是文件filenames的路径,filenames是在dirpath路径下的所有非文件夹的文件,所以要遍历所有的文件,还要一层循环:

for dirpath,dirnames,filenames in os.walk(path):
    print(dirpath,dirnames,filenames)
		for filename in filenames:
			#判断filename中是否有关键词

代码如下:

#导入OS模块
import os
#待搜索的目录路径
path = "Day1-homework"
#待搜索的名称
filename = "2020"
#定义保存结果的数组
result = []

def findfiles():
    #在这里写下您的查找文件代码吧!
    i = 1#要求文件的序号
    for dirpath,dirnames,sub_filenames in os.walk(path):
        #对文件有”2020“进行删选
        for sub_filename in sub_filenames:
            str_sub_filename = str(sub_filename)
            if(str_sub_filename.find(filename,0,len(str_sub_filename))!=-1):
                result.append(sub_filename)#将指定文件加入result
                print('序号:{}  '.format(i)+dirpath+sub_filename)
                i = i+1#序号加一


    

if __name__ == '__main__':
    findfiles()

运行结果:
在这里插入图片描述

你可能感兴趣的:(Python小白逆袭大神)