Python实训day10am【Python中的地址引用、os模块】
- Python實訓-15天-博客匯總表
目錄
1、Python中的地址引用
2、os模塊(操作系統模塊)
2.1、os案例1
2.2、os案例2
2.3、os案例3
2.4、os案例4
2.5、os案例5
2.6、os案例6
os模塊、操作目錄/文件、實訓大作業
1、Python中的地址引用
list1 = [] list2 = [] for i in range(65, 91):list1.append(chr(i));a = list1.copy(); # !!!list2.append(list1); print(list2)print("--------------------------------------")s1 = [1, 2, 3, 4] s2 = [6, 7, 8, 9]s1.append(s2) print(s1); # [1, 2, 3, 4, [6, 7, 8, 9]]s2 = [1];print(s1); # [1, 2, 3, 4, [6, 7, 8, 9]]√ or [1,2,3,4,[1]] print(s2); # [1]2、os模塊(操作系統模塊)
2.1、os案例1
import os # 不需要安裝,內置模塊,直接使用即可# 查看當前目錄下的所有內容(文件、文件夾),命令執行所在目錄或.py文件所在目錄# listdir ls = os.listdir('.'); print(ls) # ['day01-am-01.py', 'day01-pm-01.py', ...# 絕對路徑:absolute path——>os.path.abspath p1 = os.path.abspath("."); # 查看當前目錄是哪個目錄 print(p1); # F:\JetBrains\2pythonSpace\pythonCode\實訓lwx作業p2 = os.path.abspath("test01.py"); print(p2) # F:\JetBrains\2pythonSpace\pythonCode\實訓lwx作業\test01.py # 當我們需要精準的讀寫某個位置的文件時,需要得到一個絕對路徑print(dir(os)) # 查看os模塊的所有函數2.2、os案例2
import os # 不需要安裝,內置模塊,直接使用即可# 新建文件夾 d1 = r'C:\Users\lwx\Desktop\測試目錄'; os.mkdir(d1);# 多層級創建目錄 d2 = r'C:\Users\lwx\Desktop\測試目錄1\a\b'; os.makedirs(d2);# 判斷路徑是否存在 b1 = os.path.exists(d2); print(b1) # True b2 = os.path.exists(r'C:\Users\lwx\Desktop\測試目錄\a.txt'); print(b2) # False2.3、os案例3
import os # 不需要安裝,內置模塊,直接使用即可print(dir(os.path)) # os.path子模塊中也有很多函數 # isabs:判斷是否為絕對路徑 # isdir:判斷是否為目錄 # isfile:判斷是否為普通文件 b3 = os.path.isabs(r'C:\Users\lwx\Desktop\測試目錄'); print(b3) # Truef1 = r'C:\Users\lwx\Desktop\pythonTest\test01.py'; # 獲取文件名,字符串操作 fname = f1.split('\\')[-1]; print(fname) # test01.py# path的spilt ls = os.path.split(f1); # 兩部分tuple:目錄、文件名 print(ls[0]) # C:\Users\lwx\Desktop\pythonTest print(ls[1]) # test01.py# 直接使用dirname可以獲取所在目錄 print(os.path.dirname(f1)) # C:\Users\lwx\Desktop\pythonTest# join,拼接:目錄、文件名 f2 = os.path.join(r'C:\Users\lwx\Desktop\python', 'c.txt'); print(f2) # C:\Users\lwx\Desktop\python\c.txt相當于r'C:\Users\lwx\Desktop\python' + "\\" + 'c.txt'2.4、os案例4
# 1.有目錄:C:\Users\lwx\Desktop\pythonTest # 2.打印其中.py文件的絕對路徑 # 3.統計有幾個.py文件 # 4.統計所有的.py文件內容,加起來一共有多少行 # 5.將所有的.py文件,復制到C:\Users\lwx\Desktop\測試目錄中import os # 不需要安裝,內置模塊,直接使用即可root = r'C:\Users\lwx\Desktop\pythonTest'; fs = os.listdir(root); # 列出此目錄下的所有文件 print(fs)pys = []; for f in fs:if f.endswith('.py'):pys.append(os.path.abspath(f)); # os.path.abspath(f)# pys = [os.path.abspath(x) for x in fs if x.endswith('.py')]; # python的簡潔語法 print(pys) print("len(pys):", len(pys))ct = 0; # 計數:所有的py文件一共多少行 for py in pys:f = open(py, 'r', encoding='utf-8');content = f.read(); # 讀到一個大的字符串f.close();linenum = content.count('\n'); # count函數ct = ct + linenum; # 求和 print("ct:", ct)root2 = r'C:\Users\lwx\Desktop\測試目錄'; for py in pys:f = open(py, 'r', encoding='utf-8'); # 'C:\\Users\\qx\\Desktop\\python\\1-1.py'content = f.read();f.close()# 獲取文件名稱fname = os.path.split(py)[1]; # 1-1.py# 拼接生成目標路徑destfile = os.path.join(root2, fname); # C:\Users\qx\Desktop\測試目錄\1-1.pyf = open(destfile, 'w', encoding='utf-8');f.write(content);f.close();2.5、os案例5
使用程序完成如下功能:
在桌面(C:\Users\qx\Desktop)上創建一個test目錄(如已經有了,就使用,沒有再創建)
在test目錄中,創建10個文件夾 ,名字為0-9
在每個文件夾中,創建隨機層數(1-26)的子文件夾嵌套,子文件的名字依次是 A\B\C\D\E\F\G\H\I....Z
在最后一個文件夾中,編寫一個.txt文件,文件的內容為hello,文件名為最頂層文件夾的名字(0-9)
編程思路:跟編程語言是無關的~~
多看,多理解,多用腦子執行。
咦,老師都能想到,我卻想不到,是不是我不適合寫代碼呢???否!
咦,大家都能想到,我卻想不到,是不是我不適合寫代碼呢???否!
能想到 ---->不是基于智商,而是基于經驗!!!【見的足夠多了,寫的足夠多了,自然就有思路了。】
2.6、os案例6
學以致用,課堂練習:考勤目錄中存放的是所有的考勤excel表格,從第1天~第9天,表中關鍵的信息就是,學生當天看了多久的直播。
要求,利用所學知識,讀取每個excel表格,統計出來每個學生,一共看了多久的直播。x小時y分鐘,不考慮秒。
一個小時完成,一會兒我跟大家一起,同步寫代碼。???pandas---os,上課的考勤數據,是我打分的評判標準。
在生活場景中,pandas處理表格,還是非常常用的,借此機會,我們再來復習應用一下~
總結
以上是生活随笔為你收集整理的Python实训day10am【Python中的地址引用、os模块】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电脑常用工具(阅读代码、文件搜索、思维导
- 下一篇: Python实训day10pm【os模块