<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ### **文件的小結:** 1. 概念:文件是存儲在持久存儲設備上的數據 2. 作用:長久存儲數據的 3. 存儲的設備:硬盤,U盤,移動硬盤,光盤 計算機中的文件最終都是以二進制的方式保存到磁盤 <br /> ### **文件的分類:** 1. 文本文件 ①.可以用文本編輯器打開的文件 ②.舉例: .txt, .py, .htmL, .java, .C... ③.文本文件最終還是以二進制的方式保存的 2. 二進制文件 ①.不能使用文本編輯器打開,必須使用專用的軟件打開的文件 ②. office辦公軟件的文件,圖片 .png, .jpg, .gif, 音頻文件, mp3, 視頻文件, mp4 <br /> ### **文件操作流程:** 1. 打開文件 2. 操作文件 ①.讀文件(把硬盤上文件中的內容讀取到內存中) ②.寫文件(把內存中數據寫入到硬盤上的文件中) 3. 關閉文件 <br /> ### **常用的函數/方法:** ``` 1. open() 作用:打開文件,返回文件的操作對象 注意: ? windows默認編碼格式gbk,打開文件的需要指定編碼格式, encoding="utf-8" ? linux系統和unix系統默認編碼格式就是 utf-8 2. read() 作用:讀取文件內容 特點:方法一次性讀取文件全部內容,下次再讀取時,將讀不到任何內容 ? 注意:讀取文件內容的數據類型是字符串 3.write() 作用:把內存中數據寫入文件 注意: write()方法只能寫入字符串,不能寫入列表 ? 注意: write()方法有返回值,返回值是寫入字符串的長度 4.close() 作用:關閉文件 注意:不關閉文件會造成系統資源浪費 ``` ``` ''' 1.打開文件: 文件不存在,報錯 文件存在,正常打開 注意: windows默認編碼格式gbk,打開文件的需要指定編碼格式, encoding="utf-8" linux系統和unix系統默認編碼格式就是 utf-8 ''' file = open("readme.txt", encoding="utf-8") ''' 2.操作文件 讀文件文件對象.read() read()方法一次性讀取文件全部內容,下次再讀取時,將讀不到任何內容 read()方法讀取文件內容的數據類型是字符串 ''' text = file.read() print("--->>>%s<<<---" % text) print(type(text)) ''' 3.關閉文件 不關閉文件會造成系統資源浪費 ''' file.close() ``` <br /> ### **文件指針:(了解)** 1. 相當于鼠標的光標,用來標記文件讀取的位置 2. 打開文件時,文件指針位于文件的開頭 3. 當使用read()讀取文件內容后,文件指針會移動到文件末尾,(read()方法讀取文件的內容一 次性全部讀取) 4. 所以再次使用read()讀取文件內容時,將讀不到任何內容 <br /> ### **打開文件的方式:** 1. "r" 只讀 文件不存在,報錯 文件存在,從開頭讀 2. "w" 只寫 文件不存在,新建 文件方在,覆蓋 3. "a"追加 文件不存在,新建 文件有在,在文件末尾追加數據 注意: 頻繁移動的文件指針,會降低文件的讀寫效率, 一般情況下,使用只讀或只寫的方式打開文件 ``` ''' 打開文件的方式 1. "r" 只讀 文件不存在,報錯 文件存在,從開頭讀 2. "w" 只寫 文件不存在,新建 文件方在,覆蓋 3. "a"追加 文件不存在,新建 文件有在,在文件末尾追加數據 ''' # 1. "r" 只讀 file = open("new.txt", "r", encoding="utf-8") text = file.read() print(text) file.close() # 2. "w" 只寫 file = open("info.txt", "w", encoding="utf-8") text = file.write("新年快樂!!") print(text) file.close() # 3. "a"追加 file = open("ml.py", "a", encoding="utf-8") text = file.write("小米新機 真不錯!") print(text) file.close() ``` ### **readline()方法小結:** 1. readline()方法一次只是讀取一行內容 2. 讀完后,把文件指針移動到下一行開始位置 3. 讀取大文件內容使用 readline()方法配合 死循環一起使用 ``` # 使用readline方法和死循環讀取大文件 file = open("new.txt", "r", encoding="utf-8") while True: line_text = file.readline() print("%s" % line_text, end="") # 當讀取到文件內容為空,字符串長度為0,跳出循環 if len(line_text) == 0: break file.close() ``` <details> <summary>文件讀寫案例---小文件的復制.py</summary> ``` ''' 目標: 把源文件中內容 拷貝到 目標文件中 ''' # 1.打開文件 # 打開源文件 file_read = open("new.txt", "r", encoding="utf-8") # 打開目標文件 file_write = open("new[復制小].txt", "w", encoding="utf-8") # 2.操作文件 # 讀取源文件內容 text = file_read.read() # 把讀取的內容寫入目標文件中 file_write.write(text) # 3.關閉文件 file_read.close() file_write.close() ``` </details> <br /> <details> <summary>文件讀寫案例---大文件的復制.py</summary> ``` ''' 目標: 把源文件中內容 拷貝到 目標文件中 ''' # 1.打開文件 # 打開源文件 file_read = open("new.txt", "r", encoding="utf-8") # 打開目標文件 file_write = open("new[復制大].txt", "w", encoding="utf-8") # 2.操作文件 # 使用readline()按行 讀取源文件內容 配合while True死循環 while True: line_text = file_read.read() # 把讀取的內容寫入目標文件中 file_write.write(line_text) # 當讀取到源文件內容為空,字符串長度為0,跳出循環 if len(line_text) == 0: break # 3.關閉文件 file_read.close() file_write.close() ``` </details> <br /> ### **os模塊對文件操作:** 1. rename 重命名文件 os.rename(源文件名, 目標文件名) 2. remove 刪除文件 os.remove(文件名) 操作文件時,可以指定絕對路徑和相對路徑 <details> <summary>os模塊對文件的操作.py</summary> ``` # os模塊對文件的操作 import os # 01 rename 重命名文件 os.rename(源文件名,目標文件名) os.rename("info.txt", "test_info.txt") # 02 remove 刪除文件 os.remove(文件名) os.remove("test_info.txt") # 支持相對路徑和絕對路徑 os.remove("D:\\rc12\\project\\hello\\new_file.java") ``` </details> <br /> ### **os模塊對目錄的操作:** 1. os.listdir(目錄名) # 獲取指定目錄下所有內容,以列表的方式保存 2. os.mkdir(目錄名) 創建目錄 3. os.rmdir(目錄名) rmdir()只能刪除空目錄 拓展: shutil模塊中有 rmtree()方法刪除非空目錄 4. os.getcwd() 獲取當前工作目錄 5. os.chdir(目標目錄) 修改工作目錄 6. os.path.isdir(文件路徑) 判斷是否是文件夾,如果是目錄,返回True,否則返回 False 7. os.path.exists(目錄/劉件) 判斷指定的目錄名或文件名是否存在,如果存在返回True,否則返回False <details> <summary>os模塊對目錄的操作.py</summary> ``` # os模塊對目錄的操作 import os import shutil # 01 listdir 目錄列表 os.listdir(目錄名) # 查看指定錄下所有文件,以列表的形式展現,默認獲取的是當前目錄 print(os.listdir(".")) print(os.listdir("./")) print(os.listdir()) print(os.listdir("D:\\rc12\\project\\hello\\new_file.java")) # 02 mkdir 創建目錄 os.mkdir(目錄名) os.mkdir("hello") os.mkdir("D:\\rc12\\project\\hello\\new") # 03 mkdir 刪除目錄 os.mkdir(目錄名) rmdir()只能刪除空目錄 os.rmdir("hello") os.rmdir("python") # 拓展:shutil模塊中 rmtree可以刪除非空目錄 shutil.rmtree("python") # 04 getcwd 獲取當前目錄 os.getcwd() print(os.getcwd()) # 05 chdir 修改工作目錄 os.chdir(目標目錄) os.chdir("PYTHON") print(os.getcwd()) # 06 path.isdir 判斷是否是文件夾 os.path.isdir(文件夾路徑) # 如果是目錄,返回True,否則,返回False print(os.path.isdir("PYTHON")) print(os.path.isdir("new.txt")) # 07 os.path.exists(目錄/文件) 判斷指定的目錄或文件是否存在,如果存在,返回True,否則返回False print(os.path.exists("readme.txt")) ``` </details> <br /> <details> <summary>批量修改文件名.py</summary> ``` # 批量修改文件名 import os import shutil # 1.批量創建文件 def create_files(): print(os.getcwd()) # (0)先判斷 目錄files是否存在,如果存在刪除,如果不存在新建 if os.path.exists("./files"): shutil.rmtree("./files") # (1)先創建目錄 files os.mkdir("./files") # (2)將工作目錄切換到files目錄下 os.chdir("./files") print(os.getcwd()) # (3)在files目錄下 批量創建文件 for i in range(10): file = open("new.txt", "w", encoding="utf-8") file.write("hhhhhh") file.close() # 2.批量修改文件名 def change_files_name(): # (1)查看當前目錄 是否為files print("---1---", os.getcwd()) # path保存的是files目錄的路徑 path = "D:\\new_project\\dayo7\\案例_批量修改文件名\\fiels" # 如果不是files目錄,要切換到files目錄下 if os.getcwd() != path: os.chdir(path) print("---2---", os.getcwd()) # 如果是files目錄下,獲取目錄下所有的內容,os.listdir()以列表方式保存 files_name = os.listdir() print(files_name) # 使用for循環遍歷列表,使用os.rename()重命名文件 for name in files_name: os.rename(name, "heima_" + name) # 調用函數 create_files() change_files_name() ``` </details> <br />
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看