## 什么是文件
我們知道電腦硬盤里存儲著各種各樣的數據,這一個個數據就是文件。比如:一張照片、一個excel文檔、一個ppt、一個視頻 這些都是文件。

## 文件系統
這些文件散落在磁盤里,必須要有一個好的整理方式。不然找到這些文件就太難了。
操作系統的設計者使用了一個很精巧的方案來組織這些文件。在講解電腦里的文件系統之前,我們先來看一個家譜圖:

通過親屬圖,可以一下子知道我們一大家子有多少人。也可以知道分別在哪兒。
文件系統的設計思路跟這個類似,也是才有這種自頂向下的方式組織的:

通過這種結構,每個文件都可以通過我們的根目錄(C盤、D盤)來找到。那我們查找、修改這些文件的時候就可以通過文件路徑來操作了。
## 文件與文件夾
在我們的文件樹中,有兩種顏色的格子。橙色的格子是下面還有節點的,這種叫文件夾(里面存放一個個文件)。白色的是一個個文件,里面是具體的數據內容。文件夾本質上也是一個文件,只是它可以包含數據而已。


# 文件操作
## 查找文件
有了文件樹結構,那我們改怎么定位一個文件呢?比如我們要找:explorer.exe 這個文件該怎么找呢?我們可以從文件數的最頂層開始往下定位,直到找到這個位置。`c:\Windows\explorer.exe`。這個位置也叫文件目錄。
文件路徑:
**當前路徑**:程序運行時所在的位置。`./`
**絕對路徑**:從文件的根路徑(c:\ d:\ ),開始到某個文件的路徑叫絕對路徑。`c:\Windows\explorer.exe`
**相對路徑**:文件相對于當前路徑所在的位置。`./winhelp.exe`
## 用python對文件的一些操作
1. 打印當前路徑
~~~
import os
currentPath = os.getcwd()
print(currentPath)
~~~
2. 獲取路徑下的所有文件名稱
~~~
os.listdir(currentPath)
~~~
3. 輸出某個文件的絕對路徑
~~~
absPath=os.path.abspath("turtledraw.py")
print(absPath)
~~~
4. 輸出某個文件的相對路徑
~~~
relativePath = os.path.basename(absPath)
print(relativePath)
~~~
5. 獲取文件的父目錄?
~~~
parentPath = os.path.dirname(absPath)
print(parentPath)
~~~
6. 判斷一個文件是否是一個文件夾
~~~
isFile = os.path.isdir(absPath)
print(isFile)
~~~
7. 判斷文件路徑下是否有這個文件
~~~
exits = os.path.exists(absPath)
print(exits)
~~~
8. 給文件改名字
~~~
os.rename(absPath, absPath+".new")
~~~
## 總結
文件系統作為電腦的最基礎的數據組成,非常重要。這節課學習的內容較多。在記住這些python語法之前,一定要知道什么是文件系統,文件系統是怎么構成的。文件、文件夾的區別;當前路徑,相對路徑與絕對路徑。知道了這些概念。下面的一些函數記不住了可以用百度或Google搜索。
- 課程介紹
- 搭建環境
- 什么是計算機
- 程序是怎么運行的
- 安裝python
- 項目實例-安裝IDE
- 變量和簡單數據類型
- 數據&變量
- 數字
- 字符串
- 布爾類型
- 項目實例
- 容器-列表
- 容器
- 列表
- 項目實例
- 容器-字典
- 定義字典
- 項目實例
- 數據類型總結
- 條件語句
- python條件語句
- 項目實例
- 循環語句
- for循環
- while循環
- 項目實例
- 函數
- 5.0函數定義
- 5.2函數實戰
- 6.文件系統
- 6.1 文件系統介紹&python查找文件
- 6.2 用python讀寫文件
- 7. python操作時間
- 8.面向對象
- 8.1 類和對象
- 8.2 繼承和重寫
- 8.3 面向對象項目實戰
- 9 GUI編程
- 9.1 GUI基礎
- 9.2 備忘清單GUI版
- 10.網絡
- 10.1 網絡的發展
- 10.2 python http
- 11.web開發
- 11.1 web基礎&HTML
- 11.2 CSS&JavaScript
- 11.3 網頁計算器
- 11.3 網站開發實戰-播客搭建
- 11.3 python-web
- 12. 項目實戰-數據處理
- 13. 項目實戰-AI入門
- 13.1 環境搭建
- 心得
- 13.2 Tensorflow的瓜怎么吃
- 14 pygame
- 14.1 pygame Helloworld
- 14.4 pygame 動畫基礎 Animation
- 從0開始學python第14.5節 pygame 加載圖片和聲音
- 從0開始學python第14.6節 pygame.sprite(上)
- 14.7 pygame.sprite模塊(下)
- 14.8 pygame射擊游戲(一)
- pygame射擊游戲(二)
- 14.8 pygame射擊游戲(三)
- 14.8 pygame射擊游戲(四)
- 14.8 pygame射擊游戲(五)