【Python 高頻 API 速學 ③】

一、為什么先學這 5 個?

? 它們覆蓋了「切 → 洗 → 拼 → 換 → 排版」整條鏈路。
? 任意一段文本處理腳本,80 % 的操作都能用這 5 個方法寫完。


二、五虎上將一覽

方法作用典型場景易踩的坑
split(sep=None)按分隔符切成列表日志拆字段、CSV 解析連續分隔符會產生空串
strip(chars=None)去首尾空白/指定字符清洗用戶輸入、去換行只能去首尾,中間不動
join(iterable)用指定字符串把列表拼回去路徑拼接、SQL 占位符元素必須全是 str
replace(old, new, count=-1)批量替換子串脫敏、模板渲染默認全部替換,count 可限次
format / f-string格式化輸出日志、報表、郵件舊版 % 格式化已過時

三、一行代碼場景秀

  1. 把網址參數變字典
params = dict(pair.split('=', 1) for pair in query.strip('&').split('&') if pair)
  1. 清洗并重組文件路徑
clean_path = '/'.join(part.strip() for part in raw.split('/') if part)
  1. 日志脫敏:手機號中間四位換成 ****
masked = re.sub(r'(\d{3})\d{4}(\d{4})', r'\1****\2', text)

(先用 replace 也行:text.replace(text[3:7], '****')

  1. 批量生成 SQL 占位符
placeholders = ', '.join(['%s'] * len(columns))
sql = f"INSERT INTO {table} ({', '.join(columns)}) VALUES ({placeholders})"
  1. 模板郵件格式化
body = """
Hi {name},Your order #{order_id} has been shipped on {date}.
""".format(name=name, order_id=oid, date=ship_date)

或更現代的 f-string:

body = f"Hi {name}, your order #{oid} shipped on {ship_date:%Y-%m-%d}"

四、mini 實戰:5 行搞定 nginx 日志轉 CSV

輸入:空格分隔的原始日志行
輸出:ip, time, method, url, status, size

import csv, sys
for line in sys.stdin:parts = line.strip().split()csv.writer(sys.stdout).writerow([parts[0], parts[3][1:], parts[5][1:], parts[6], parts[8], parts[9]])

跑一下:

$ tail -n 100 access.log | python log2csv.py > log.csv

五、一條記憶口令

“split 分,strip 洗,join 拼,replace 換,format 美。”

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/94873.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/94873.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/94873.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

前端百分比展示導致后端 BigDecimal 轉換異常的排查與解決

在開發一個訂單預算系統時,我們需要在前端動態計算「利潤率差額」,格式為百分比(帶 % 符號)保留4位小數,但實際傳給后端時必須是純數字(浮點數),以便后端正常以 BigDecimal 類型接收…

論文學習21:Pyramid Scene Parsing Network

代碼來源 GitHub - hszhao/PSPNet: Pyramid Scene Parsing Network, CVPR2017. 模塊作用 對于不受限制的開放詞匯和多樣化場景,場景解析極具挑戰性。本文結合金字塔池化模塊和提出的金字塔場景解析網絡(PSPNet),利用基于不同區…

從手工編碼到自動化:APP開發的效率革命

摘要**熬夜敲代碼、反復調試改 Bug,項目進度卻依舊緩慢,這是無數 APP 開發者在手工編碼時代的真實寫照。更讓人崩潰的是,即便投入大量時間精力,最終交付的 APP 還可能存在各種問題。難道 APP 開發注定如此艱辛?不&…

數據結構5.(哈希表及數據的排序和查找算法)

1.哈希算法將數據通過哈希算法映射成一個鍵值,存取都在同一位置實現數據的高效存儲和查找,將時間復雜度盡可能降低至O(1),同樣的參數返回同樣的整數,不同的參數返回不同的整數2. 哈希碰撞多個數據通過哈希算法得到的鍵值相同&…

數據結構Java--7

排序排序就是使一串記錄,按照其中的某個或某些關鍵字的大小,遞增或遞減的排列起來的操作排序的穩定性假若有以下數組,數組中存在兩個5,這里區分標記如果排序之后,紅色的5仍然在藍色的5前面,我們就認為該排序…

《Node.js與 Elasticsearch的全文搜索架構解析》

文檔數量跨越百萬級門檻,傳統數據庫的查詢方式就像在沒有索引的圖書館里逐架翻書,不僅耗費時間,更難以捕捉文字背后的深層關聯。此時,由Node.js與Elasticsearch共同構建的全文搜索系統,便成了梳理信息脈絡的無形之手——它能在毫秒之間,從海量文檔中識別用戶的真實意圖,…

Python人工智能matplotlib中markers屬性介紹

在 Matplotlib 中&#xff0c;marker 用于標記數據點&#xff0c;可通過多種參數自定義樣式。以下是詳細說明及示例&#xff1a; 1. 基礎設置常用 marker 類型&#xff1a; . : 點 , : 像素 o : 圓圈 v : 下三角形 ^ : 上三角形 < : 左三角形 >…

【Mac】MLX:Lora微調工作流

本文詳細介紹如何在Mac電腦上使用Apple的MLX框架&#xff0c;通過LoRA&#xff08;低秩適配&#xff09;技術對大語言模型&#xff08;如Qwen3-4B-Instruct&#xff09;進行微調。以下流程適用于8月9日的Mac mini M4 16GB&#xff0c;涵蓋模型獲取、數據準備、微調、運行及模型…

潤乾報表、帆軟報表的開源替代品—JimuReport(積木報表)

國產報表工具選型指南&#xff1a;潤乾報表 vs 積木報表&#xff08;JimuReport&#xff09; 如果你在尋找潤乾報表、帆軟報表的替代產品&#xff0c;JimuReport&#xff08;積木報表&#xff09;是一個值得考慮的選擇。它不僅功能全面&#xff0c;而且操作簡單&#xff0c;非常…

Tiger任務管理系統-12

今天整了一個老虎網站介紹這套任務管理開源系統&#xff0c;防止鏈接丟失&#xff0c;體驗了一把AI編程&#xff0c;雖說確實省了很多事&#xff0c;但源碼確實不敢恭維&#xff0c;尤其是修改的時候&#xff0c;真心累&#xff0c;所以還是要自己掌握核心&#xff0c;AI一時爽…

智慧農業-無人機視角莊稼倒伏農作物倒伏識別分割數據集labelme格式541張1類別

數據集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;僅僅包含jpg圖片和對應的json文件)圖片數量(jpg文件個數)&#xff1a;541標注數量(json文件個數)&#xff1a;541標注類別數&#xff1a;1標注類別名稱:["fall"]每個類別標注的框數&#xff1a;fall co…

電子電氣架構 --- 電氣/電子架構遷移已拉開帷幕

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 做到欲望極簡,了解自己的真實欲望,不受外在潮流的影響,不盲從,不跟風。把自己的精力全部用在自己。一是去掉多余,凡事找規律,基礎是誠信;二是…

PPT漏斗圖,讓數據更美觀!

PPT漏斗圖制作全攻略&#xff1a;從入門到精通的實用技巧和模板推薦 無論你是職場新人還是PPT老手&#xff0c;在做數據報告或者展示項目進度的時候&#xff0c;你總覺得圖表太單調&#xff0c;數據太復雜嗎&#xff1f;這時&#xff0c;一張邏輯清晰、結構簡單的漏斗圖&#…

深入解析C++流運算符(>>和<<)重載:為何必須使用全局函數與友元機制

目錄 一、為什么需要重載為全局函數 成員函數重載的問題 全局函數的優勢 二、實現細節 1、輸出運算符<<的重載 關鍵部分詳解 1. 類定義部分 2. 運算符重載實現 3. main函數中的使用 為什么這樣設計&#xff1f; 執行流程 輸出結果 2、輸入運算符>>的重…

ENS-317 Modbus TCP / 通用模式網關

在工業自動化的復雜網絡中&#xff0c;以太網設備與串口設備的 “語言不通” 常常成為數據流轉的阻礙。上海泗博自動化推出的 ENS-317 Modbus TCP / 通用模式網關&#xff0c;以強大的協議轉換能力、靈活的配置方式和工業級可靠性&#xff0c;為設備互聯提供一站式解決方案&…

AcWing 6478. 誰進線下了?III

原題鏈接 6478. 誰進線下了&#xff1f;III - AcWing題庫 這是一道睿抗&#xff08;省賽&#xff09;題 一開始睿抗是啥都不知道 然后一看是省賽嚇得我不輕 但讀完題簡簡單單 一道很水的模擬題&#xff08;誰能解釋一下睿抗啥意思&#xff09; 一起開康康 題目 Xepa Le…

openpnp - 不連接設備,只大概測試一下攝像頭是否好使

文章目錄openpnp - 不連接設備&#xff0c;只大概測試一下攝像頭是否好使概述筆記備注備注ENDopenpnp - 不連接設備&#xff0c;只大概測試一下攝像頭是否好使 概述 頂部相機攝像頭在拆裝過程中&#xff0c;可能被手上的靜電打壞了。 現在和電腦連接是正常的&#xff0c;但是…

使用Python提取PDF大綱(書簽)完整指南

&#x1f50d; 一、PDF大綱簡介&#x1f4cc; ?PDF大綱&#xff08;Outline&#xff09;?? 是PDF文檔中的導航結構&#xff0c;通常顯示在閱讀器的側邊欄中&#xff0c;方便用戶快速跳轉到文檔的不同部分。大綱通常以層級結構組織&#xff0c;包含標題和對應的頁面位置。本文…

第39周——訓練自己的數據集

目錄 1. 下載數據 2. 配置開發環境 3. 預處理數據 &#x1f368; 本文為&#x1f517;365天深度學習訓練營 中的學習記錄博客&#x1f356; 原作者&#xff1a;K同學啊 1. 下載數據 百度網盤&#xff1a;百度網盤 請輸入提取碼 壓縮文件中有兩個文件夾&#xff0c;分別是Annot…

CentOS7中Docker的安裝與卸載

CentOS7 從零開始:Docker 安裝與卸載全指南(新手友好版) 作為一名剛接觸 Linux 和容器技術的新手,你是否曾在安裝 Docker 時被各種命令和報錯搞得一頭霧水?比如執行 yum install docker 時提示 “倉庫不存在”,或者啟動 Docker 后用 docker version 只顯示 client 不顯示…