python3常用模塊

1 數學運算模塊 math

  • “math”模塊提供了許多常用的數學函數,例如三角函數、四舍五入、指數、對數、平方根、總和等
import math

1.1 常數

  • math.pi 返回圓周率的數學常數。
  • math.e 返回指數的數學常數
  • 示例:
print(math.pi)
print(math.e)

1.2 fabs(x)

  • 取絕對值
  • 示例:
print(math.fabs(5))
print(math.fabs(-5))

1.3 ceil(x)、floor(x)、round(x)

  • ceil(x):向上取整(進1)
print(math.ceil(3.1))
  • floor(x):向下取整
print(math.floor(3.1))
  • round(x):四舍五入取整
print(round(3.51))
print(round(3.49))

1.4 pow(x, y)、sqrt(x)

  • pow(x, y):x的y次方
print(math.pow(2,3))
print(2**3)
  • sqrt(x):x的平方根
print(math.sqrt(9))

1.5 factorial(x)

  • factorial(x):x的階乘,x只能為正整數
print(math.factorial(5))

2.6 gcd(a,b)、lcm(a,b)

  • gcd(a,b):a與b的最大公約數
print(math.gcd(12,8))
  • lcm(a,b):a與b的最小公倍數
print(math.lcm(9,6))

2 隨機數模塊random

  • 主要用于生成隨機數
  • 實現了各種分布的偽隨機數生成器
import random

2.1 random()方法

  • 返回一個隨機數,范圍半開放區間 [0,1)
print(random.random())# 隨機數種子,使用種子生成隨機數
random.seed()
print(random.random())
print(random.random())

2.2 randint()方法

  • 返回一個隨機正數,范圍[a,b]
print(random.randint(8,9))

2.3 randrange()方法

  • 返回指定范圍 [a,b) 內的隨機數
  • 語法:random.randrange(start, stop, step)
    • start – 可選, 一個整數,指定開始值,默認值為 0
    • stop – 必需, 一個整數,指定結束值
    • step – 可選, 一個整數,指定步長,默認值為 1
  • 示例:
print(random.randrange(1,9,3))

3 日期和時間處理模塊datetime

  • date 類用于表示日期,包含年、月、日三個屬性
  • time 類用于表示時間,包含時、分、秒、微秒等屬性
  • datetime 類是 date 和 time 的結合體,可以同時表示日期和時間
  • timedelta 類用于表示時間差,可以用于日期和時間的加減操作
import datetime

3.1 datetime

  • 獲取當前時間
print(datetime.datetime.now())
  • 獲取時間各個字段
print(datetime.datetime.now().year)
now=datetime.datetime.now()
print(now.month)
print(now.day)
print(now.hour)
print(now.minute)
print(now.second)
  • 獲取指定時間
print(datetime.datetime(2025,1,3,9,30,0))
  • 格式化日期和時間
    • 常用符號
      YmdHMS

      四位

      兩位:01~12

      兩位:01~31

      兩位:0~23

      兩位:00~59

      兩位:00~59
now=datetime.datetime.now()
print(now.strftime("%Y-%m-%d %H:%M:%S"))
print(now.strftime("%Y年%m月%d日 %H:%M:%S"))

3.2 timedelta

  • 計算時間差
now=datetime.datetime.now()
# 10天后
after_10_date=now+datetime.timedelta(days=10)
print(after_10_date)
# 10天前
before_10_date=now-datetime.timedelta(days=10)
print(before_10_date)
before_10_date=now+datetime.timedelta(days=-10)
print(before_10_date)# 1月前
before_1_month=now-datetime.timedelta(days=30)
print(before_1_month)# 1年前
before_1_year=now-datetime.timedelta(days=365)
print(before_1_year)

3.3 date

  • 獲取當天日期
# print(datetime.date.today())
  • 應用場景:日志備份
date=datetime.date.today()
path="D:/333/A/1.txt"
new_name=path.split('/')[-1].replace('.txt','_'+str(date)+'.txt')
print(new_name)
with open(path,'r',encoding='utf-8') as f1:text=f1.read()# print(text)with open('D:/333/B/'+new_name,'w',encoding='utf-8') as f2:f2.write(text)

4 系統相關模塊sys

  • 提供了與python解釋器及其環境交互的功能
  • 通過 sys 庫,可以訪問與 Python 解釋器相關的變量和函數,例如命令行參數、標準輸入輸出、程序退出等。
import sys

4.1 命令行參數

  • sys.argv 是一個包含命令行參數的列表。sys.argv[0] 是腳本的名稱,后續元素是傳遞給腳本的參數。
print(f'腳本名稱:{sys.argv[0]}')
print(f'腳本參數:{sys.argv[1]}')
  • 在終端運行:python py.py py

4.2 sys.exit()

  • 用于退出程序
def A():print('-'*20,'函數A開始','-'*20)for i in range(10):print(i)if i==5:print('-'*20,'函數A結束','-'*20)# return結束當前函數return# exit退出當前程序# sys.exit()
def B():print('-'*20,'函數B開始','-'*20)A()# exit時不執行該語句print('-'*20,'函數B結束','-'*20)
B()

4.3 標準輸入輸出

  • sys.stdin、sys.stdout 和 sys.stderr 分別代表標準輸入、標準輸出和標準錯誤流。
# 標準輸出
with open('d:/333/2.txt','w',encoding='utf-8') as f:sys.stdout=fprint('標準輸出到文件')
# 標準輸入
print('輸入:')
list1=[]
for i in sys.stdin:if i.strip()=="":breaklist1.append(i.strip())
print('輸出:')
for i in list1:print(i)

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

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

相關文章

基于Pandas和FineBI的昆明職位數據分析與可視化實現(二)- 職位數據清洗與預處理

文章目錄 一、數據集介紹二、缺失值處理三、重復值處理四、薪資數據格式處理五、技能格式處理六、拆分薪資列并處理異常值七、拆分工作區域列八、清洗后的數據集九、完整代碼 一、數據集介紹 這份昆明職位數據集源自 Boss 直聘,數據量頗為豐富,包含 177…

工業4.0核心引擎!意法STM32F407ZET6 單片機 賦能智能PLC/網關設計

STM32F407ZET6 單片機深度解析 1. 產品定位 STM32F407ZET6 是意法半導體(STMicroelectronics)推出的 高性能ARM Cortex-M4單片機,采用 LQFP144封裝,主打 浮點運算、豐富外設和工業級可靠性,廣泛應用于需要復雜算法和實…

[Andrej Karpathy_2] vibe coding | 大型語言模型的1960年代 | 自主性滑塊

Hugging Face的Tom Wolf分享了一段我非常喜歡的視頻,這些孩子正在進行氛圍編程。 我覺得這是一個非常治愈的視頻,我愛這個視頻。(they grow up "knowing" they can build anything 😭greatness) 未來是美好的 前文&…

uv包管理常用命令

uv常用命令 uv init 初始化項目 uv add 包名 添加包;多個包名,中間用空格 uv tree 包的關系 uv remove 刪除所有包 uv sync 重新解析 安裝工具 1、mypy 檢測工具 uv tool install mypy uv tool run mypy xxx.py 使用 2、Ruff uv tool…

Nano-vLLM 源碼學習

以下內容由Trae生成。我只管問和排版。 Nano-vLLM 是一個從零構建的輕量級vLLM實現項目,具備快速離線推理、代碼可讀性高和優化功能豐富等特點,性能表現和原版vLLM相媲美。以下是該項目各目錄和文件的功能說明: 1. 根目錄: benc…

MySQL 8.4 備份與恢復完全指南

本文全面解析MySQL 8.4的備份與恢復機制,涵蓋備份類型、方法、策略及實際操作示例。 一、備份類型解析 1. 物理(原始)備份 vs 邏輯備份 特性物理備份邏輯備份原理直接復制數據庫目錄/文件(如數據文件、日志)導出邏輯結構(CREATE…

Mac 部署Latex OCR并優化體驗(打包成App并支持全局快捷鍵)

🍁 前言 最近閱讀論文,在做筆記的時候總是要手動輸入一些latex公式,非常耗時。我使用Hapigo的Latex 公式識別,感覺還挺好用,但是缺陷是只有30次免費額度,于是在網上搜索了一下,發現可以通過本地…

128K 長文本處理實戰:騰訊混元 + 云函數 SCF 構建 PDF 摘要生成器

一、背景 在數字化辦公時代,PDF 文檔因其格式穩定、兼容性強等特點,成為知識分享與文檔存儲的主要載體之一。但隨著文檔規模的增長,如何快速提取關鍵信息成為亟待解決的問題。尤其對于 128K 字符及以上的長文本 PDF,傳統處理方法…

Elasticsearch 排序性能提升高達 900 倍

作者:來自 Elastic Benjamin Trent, Mayya Sharipova, Chenhui Wang 及 Libby Lin 了解我們如何通過更快的 float / half_float 排序和 integer 排序的延遲優化來加快 Elasticsearch 排序速度。 Elasticsearch 引入了大量新功能,幫助你為你的使用場景構建…

Nginx重定向協議沖突解決方案:The plain HTTP request was sent to HTTPS port

問題原因 ??服務器運行在 HTTPS 模式,但代碼卻發出了 HTTP 重定向指令,兩套協議對不上,瀏覽器直接報錯。?? 在Java中,常見于response.sendRedirect()方法的使用。該方法默認生成基于HTTP的絕對URL,即便原始請求是…

機器學習如何讓智能推薦“更懂你”,助力轉化率飛躍?

機器學習如何讓智能推薦“更懂你”,助力轉化率飛躍? 今天咱聊聊一個電商、內容平臺、社交App都離不開的“秘密武器”——智能推薦系統,以及機器學習到底如何幫它提升轉化率的。 說白了,轉化率就是“點進去買單”的概率。智能推薦做得好,轉化率能蹭蹭上漲;做不好,用戶滑…

Ruby CGI Session

Ruby CGI Session 引言 CGI(Common Gateway Interface)是一種網絡服務器與外部應用程序(如腳本或程序)進行通信的協議。在Ruby語言中,CGI被廣泛用于創建動態網頁。本文將深入探討Ruby CGI Session的相關知識&#xf…

從零開始的云計算生活——第二十四天,重起航帆,初見MySQL數據庫

一.故事劇情 接下來要進入到一條比較長的路——mysql數據庫,之后會用一段時間來學習mySQL數據庫的內容,今天先從基礎開始介紹mysql數據庫。 二.MySQL數據庫概述 1.數據庫概念 數據庫(Database) 簡稱DB,按照一定格式存儲數據的一些文件的…

ES文件管理器v4.4.3(ES文件瀏覽器)

前言 ES文件管理器(也叫ES文件瀏覽器)是一款手機上用來看和管理文件的工具。你可以用它像在電腦上一樣,把文件整理進不同的文件夾,查找照片、文檔、視頻都很方便。它還能看到平時看不到的隱藏文件,幫你清理一些沒用的…

leetcode:693. 交替位二進制數(數學相關算法題,python3解法)

難度:簡單 給定一個正整數,檢查它的二進制表示是否總是 0、1 交替出現:換句話說,就是二進制表示中相鄰兩位的數字永不相同。 示例 1: 輸入:n 5 輸出:true 解釋:5 的二進制表示是&am…

GRU與LSTM之間的聯系和區別

前面我們談到RNN與LSTM之間的關系,而GRU也是循環神經網絡中的一種模型,那么它與LSTM有什么區別呢? 接下來我來對GRU(Gated Recurrent Unit)模型進行一次深度解析,重點關注其內部結構、參數以及與LSTM的對比…

2025年數字信號、計算機通信與軟件工程國際會議(DSCCSE 2025)

2025年數字信號、計算機通信與軟件工程國際會議(DSCCSE 2025) 2025 International Conference on Digital Signal, Computer Communication, and Software Engineering 一、大會信息 會議簡稱:DSCCSE 2025 大會地點:中國北京 審稿…

北峰智能SDC混合組網通信方案,助力無網絡場景高效作業

在自然災害、公共安全事件或大規模活動應急響應中,專用無線對講通信因其不受外部網絡限制、免去通話費用、無需撥號便可實現即時語音調度的特點,展現出其不可替代的價值。尤其在許多無基礎設施的地區,對智能化調度管理的需求并不亞于城市地區…

HarmonyOS應用開發高級認證知識點梳理 (二) 組件交互

以下是 HarmonyOS 應用開發中 ?組件交互? 的核心知識點梳理(高級認證備考重點),涵蓋事件傳遞、狀態管理、通信機制及生命周期協同: 一、事件處理機制 基礎交互類型? (1)點擊事件(onClick) 核心要點?…

【SQL優化案例】索引創建不合理導致SQL消耗大量CPU資源

#隱式轉換 第一章 適用環境 oracle 11glinux 6.9 第二章 Top SQL概況 下面列出我們發現的特定模塊中Top SQL的相關情況: SQL_ID 模塊 SQL類型 主要問題 fnc58puaqkd1n 無 select 索引創建不合理,導致全索引掃描,產生了大量邏輯讀 …