2025年7月15日 星期二

使用python撈取檔案清單

 以下是AI提供python代碼撈取檔案清單,在撈取整個硬碟時如D槽,輸入方式不一樣,需要以D:\\呈現,相關解答也是由AI提供,在除錯方面相當即時。

AI講解錯誤的原因:

在字串的結尾 \" 被 Python 當作是 逃逸字元(escaped quote),導致 字串結尾的引號無法正確解析,造成語法錯誤(SyntaxError: unterminated string literal)。

撈取檔案清單的代碼:(撈取36萬筆清單大概5分鐘以內)

import os

import pandas as pd

from datetime import datetime


# 掃描的來源資料夾(可修改)

scan_dir = r"D:\\"


# 存檔的目的資料夾(可修改)

save_dir = r"C:\資料"


# 取得來源資料夾的最後一層名稱(作為檔名的一部分)

last_folder_name = os.path.basename(os.path.normpath(scan_dir))


# 儲存檔案資訊

file_data = []


# 遍歷所有子資料夾與檔案

for foldername, subfolders, filenames in os.walk(scan_dir):

    for filename in filenames:

        filepath = os.path.join(foldername, filename)

        try:

            stat = os.stat(filepath)

            file_info = {

                "檔名": filename,

                "路徑": filepath,

                "大小": stat.st_size,

                "修改時間": datetime.fromtimestamp(stat.st_mtime),

                "建立時間": datetime.fromtimestamp(stat.st_ctime),

                "授權時間": datetime.fromtimestamp(stat.st_atime),

                "資料夾": foldername,

                "檔案格式": os.path.splitext(filename)[1].lower()

            }

            file_data.append(file_info)

        except Exception as e:

            print(f"無法讀取檔案:{filepath},錯誤:{e}")


# 轉為 DataFrame

df = pd.DataFrame(file_data)


# 組合 Excel 輸出檔案完整路徑

output_file = os.path.join(save_dir, f"檔案清單_{last_folder_name}.xlsx")


# 匯出 Excel

df.to_excel(output_file, index=False)


print(f"✅ 匯出完成:{output_file}")

將含有數據的條列訊息丟給不同AI處理_結果gpt險勝

今天將100多列的訊息分別丟給chatgpt、gemini、grok、claude處理,讓他們針對每一個敘述分類並將數據以另外一欄列出。

  • gemini無法生成excel
  • grok無法分欄顯示(全擠在一欄用,分開)
  • calude在產生過程中算是這幾個中分類最好,抓取的數據也是最符合我要的,但在下載時無法下載(白搭)
  • chatgpt分類的方式不是最好,而且會有掉訊息的情況,同樣的內容只有gpt會這樣,詢問gpt提出要以txt檔作為來源訊息,以txt提供後,沒有掉訊息的情形發生。



以下是詢問GPT為什麼會需要txt檔做為來源訊息的回覆。


這是個非常好的問題,原因可以從 記憶體限制(token 限制)格式辨識效率 兩個面向來解釋:


✅ 一、記憶體限制(token 限制)

每次你和 GPT 對話時,整段輸入(包括你的提問和我們的回應)都會消耗「token」(類似字元數)。目前 GPT-4o 雖然上限很高(約 128,000 tokens),但仍有以下幾個問題:

  1. 每段資料會累加消耗記憶體:例如你貼入 100 多筆條列訊息,每筆都可能是幾十個 token,加總起來可能就超過幾萬 token,很快接近或超出模型記憶容量。

  2. 超過記憶範圍時會導致無法完整理解或漏讀內容:模型可能忽略尾段、遺漏細節,或無法正確抓取所有結構。


✅ 二、文字格式(text file)處理更穩定

使用純文字檔的原因:

  1. 結構清楚、格式一致:貼在對話框中的條列訊息常因排版(如縮排、符號、斷行)不一致,造成辨識混亂。

  2. 易於批次讀取與轉換表格:文字檔能夠讓模型視為一個整體資料集合,用來進行結構分析、提取欄位、分類等動作會更準確、效率更高。


✅ 三、補充:為什麼會突然「需要文字檔」?

並非 GPT「只能」處理文字檔,而是當條列數量過多時:

  • 貼在對話框中的資料會「變得難以解析」或「容易遺漏資訊」

  • 用文字檔可以直接導入成檔案處理模式,提高正確率並保留完整內容

  • 特別是在你需要「整理成表格」、「分類」或「導出 Excel」這種結構化任務時,提供 .txt 會幫助我們更精準處理每一項資料


✅ 總結

原因說明
記憶體限制條列數量一多,很快耗盡 token 配額,導致處理不全
結構清晰性對話框排版不一,文字檔格式更清楚、易讀取
處理效率大量資料需要一次讀入與解析,使用檔案最穩定
可擴充性後續若需分類、轉換格式、匯出 Excel,文字檔利於自動處理

2025年7月5日 星期六

雲端平台 Python 與地端(本機)Python 主要差異

今天請AI幫忙寫爬蟲程式,但資料未下載到資料夾中,後來才發現使用雲端python與地端python會有差異,原本地端可以運行的程式在雲端要執行同樣效果則須作些許修改。不過在家裡,目前還是會以雲端python執行,雖然在公司無法使用雲端python,但以快速及使用者介面,雲端python還是較令人感到舒適。


以下為AI解釋雲端平台 Python 與地端(本機)Python 差異:



雲端平台 Python 與地端(本機)Python 主要差異在於運行環境、資源存取、安全性與使用情境等。以下以表格與說明進行比較:


📊 差異比較表

項目雲端平台 Python地端(本機)Python
運行環境遠端伺服器(如 Google Colab, AWS, Azure, GCP 等)安裝在本機電腦
計算資源可使用 GPU/TPU、高階 CPU(通常需付費)受限於本機硬體效能
環境管理已安裝大部分常用套件,免安裝或用 pip 安裝即可需自行建立虛擬環境、安裝套件
檔案存取存取雲端硬碟或需上傳/掛載資料(如 Google Drive)可直接存取本機硬碟
網路限制通常網路開放,但會有安全機制(像 Colab 限制下載目錄)完全依照本機防火牆與網路設定
持久性執行環境可能會重置、檔案不易保存檔案永久保留(除非手動刪除)
安全性雲端平台需授權存取雲端硬碟、API 等,資料可能需加密較能掌控安全性與隱私風險
效能彈性可依需求彈性擴充(如升級至 Colab Pro)升級需更換或擴充硬體
操作介面通常為 Jupyter Notebook(網頁介面)可使用 Jupyter、VS Code、PyCharm 等
適用情境資源密集任務、合作開發、快速原型設計資料保密性高、需本機存取、長期開發

💡 簡要說明

✅ 雲端平台適合:

  • 使用者沒有強大硬體但需要跑 AI 模型或大量運算。

  • 學術研究、教學、團隊共享專案(如使用 Google Colab)。

  • 開發階段、快速測試各種函式與套件。

✅ 地端 Python 適合:

  • 資料存放於本機,或需進行大量本地檔案操作。

  • 工作環境有嚴格的資訊安全規範。

  • 長期開發、部署自有應用程式(如自動化腳本、桌面應用)。


如果你目前使用 Colab 執行 Python 程式,但發現無法存取 C:\ 這種本機路徑,這正是因為程式實際是跑在 Google 的雲端伺服器上,而非你自己的電腦。

需要本機操作時,你可選擇安裝如 Anaconda、Python + VS Code 或 Jupyter Notebook 在自己電腦上使用。


優秀提示詞的必備要素

隨著生成式AI越來越強,我認為提示詞會隨著AI對你的了解逐漸沒那麼重要,但有時太簡單的提示詞AI回答的內容可能還是會有不到位的情形,下面紀錄一下目前優秀的提示詞要素要包含哪些。 在 AI(特別是像 ChatGPT 這種大型語言模型)互動時,**優秀的提示詞(Prompt)**應該...