Python 類型轉換詳解

文章目錄

  • Python 類型轉換詳解
    • 基本類型轉換函數
      • 1. 轉換為整數 (`int()`)
      • 2. 轉換為浮點數 (`float()`)
      • 3. 轉換為字符串 (`str()`)
      • 4. 轉換為布爾值 (`bool()`)
    • 容器類型轉換
      • 1. 轉換為列表 (`list()`)
      • 2. 轉換為元組 (`tuple()`)
      • 3. 轉換為集合 (`set()`)
      • 4. 轉換為字典 (`dict()`)
    • 特殊類型轉換
      • 1. ASCII碼轉換
      • 2. 進制轉換
    • 類型轉換注意事項

Python 類型轉換詳解

類型轉換是將一個數據類型的值轉換為另一個數據類型的過程。Python提供了多種內置函數來實現不同類型之間的轉換。

基本類型轉換函數

1. 轉換為整數 (int())

int(3.14)       # 浮點轉整數 → 3
int("100")      # 字符串轉整數 → 100
int(True)       # 布爾轉整數 → 1
int("1010", 2)  # 二進制字符串轉整數 → 10

2. 轉換為浮點數 (float())

float(10)       # 整數轉浮點 → 10.0
float("3.14")   # 字符串轉浮點 → 3.14
float(True)     # 布爾轉浮點 → 1.0

3. 轉換為字符串 (str())

str(100)        # 整數轉字符串 → "100"
str(3.14)       # 浮點轉字符串 → "3.14"
str(True)       # 布爾轉字符串 → "True"

4. 轉換為布爾值 (bool())

bool(0)         # → False
bool(1)         # → True
bool("")        # 空字符串 → False
bool("Hello")   # 非空字符串 → True
bool([])        # 空列表 → False
bool([1, 2])    # 非空列表 → True

容器類型轉換

1. 轉換為列表 (list())

list("abc")     # 字符串轉列表 → ['a', 'b', 'c']
list((1, 2, 3)) # 元組轉列表 → [1, 2, 3]
list({1, 2, 3}) # 集合轉列表 → [1, 2, 3]

2. 轉換為元組 (tuple())

tuple([1, 2, 3])    # 列表轉元組 → (1, 2, 3)
tuple("abc")        # 字符串轉元組 → ('a', 'b', 'c')

3. 轉換為集合 (set())

set([1, 2, 2, 3])   # 列表轉集合 → {1, 2, 3}
set("hello")        # 字符串轉集合 → {'h', 'e', 'l', 'o'}

4. 轉換為字典 (dict())

dict([(1, 'a'), (2, 'b')])  # 元組列表轉字典 → {1: 'a', 2: 'b'}
dict(zip([1, 2], ['a', 'b']))  # zip對象轉字典 → {1: 'a', 2: 'b'}

特殊類型轉換

1. ASCII碼轉換

ord('A')        # 字符轉ASCII碼 → 65
chr(65)         # ASCII碼轉字符 → 'A'

2. 進制轉換

hex(255)        # 轉十六進制字符串 → '0xff'
oct(64)         # 轉八進制字符串 → '0o100'
bin(10)         # 轉二進制字符串 → '0b1010'

類型轉換注意事項

  1. 兼容性檢查:轉換前應確保數據可以合法轉換

    int("123abc")  # 會引發 ValueError
    
  2. 精度損失:浮點轉整數會截斷小數部分

    int(3.99)  # → 3 (不是四舍五入)
    
  3. 隱式轉換:某些操作會自動進行類型轉換

    3 + 4.5  # 整數3自動轉為浮點數 → 7.5
    
  4. 容器轉換特性

    • 字典轉列表/元組/集合時,只會保留鍵
    • 集合轉換會去除重復元素

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

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

相關文章

【Python Requests 庫詳解】

目錄 簡介一、安裝與導入安裝導入 二、發送 HTTP 請求1. GET 請求基本請求URL 參數 2. POST 請求表單數據提交JSON 數據提交文件上傳 3. 其他方法PUT 請求示例DELETE 請求示例 三、處理響應1. 響應內容解析文本內容處理二進制內容處理JSON 數據處理 2. 響應狀態與頭信息狀態碼檢…

【Python 開源】你的 Windows 關機助手——PyQt5 版定時關機工具

🖥? 你的 Windows 關機助手——PyQt5 版定時關機工具 相關資源文件已經打包成EXE文件,可雙擊直接運行程序,且文章末尾已附上相關源碼,以供大家學習交流,博主主頁還有更多Python相關程序案例,秉著開源精神的…

【MySQL】002.MySQL數據庫基礎

文章目錄 數據庫基礎1.1 什么是數據庫1.2 基本使用創建數據庫創建數據表表中插入數據查詢表中的數據 1.3 主流數據庫1.4 服務器,數據庫,表關系1.5 MySQL架構1.6 SQL分類1.7 存儲引擎1.7.1 存儲引擎1.7.2 查看存儲引擎1.7.3 存儲引擎對比 前言&#xff1a…

滑動窗口(3)—無重復字符的最長子串

文章目錄 題目解析方法一:滑動窗口解法二(暴?求解)(不會超時,可以通過):附Java代碼 力扣題目:無重復字符的最長子串 題目解析 方法一:滑動窗口 思路和算法 我們先用一…

C++字符串操作詳解

引言 字符串處理是編程中最常見的任務之一,而在C中,我們有多種處理字符串的方式。本文將詳細介紹C中的字符串操作,包括C風格字符串和C的string類。無論你是C新手還是想鞏固基礎的老手,這篇文章都能幫你梳理字符串處理的關鍵知識點…

Vulhub-DC-4靶場通關攻略

下載地址:https://www.vulnhub.com/entry/dc-4,313/ 掃描IP地址 arp-sacn -l掃描端口,開啟了80和22端口 nmap -p- 192.168.112.140訪問80端口 掃描目錄,并沒有發現敏感目錄 嘗試爆破 爆破成功,用戶名admin 密碼happy 登錄成功 …

OfficePlus去掉PDF文件右鍵菜單里的PDF轉換

今天在吾愛破解論壇看到一個求助帖,說是OfficePlus,安裝后,PDF文件的右鍵菜單里多了PDF轉換,想去掉,不知道怎么弄。底下的回復基本都是百度復制或者AI搜索出的答案,大致就是找注冊表里CLASSID下的菜單欄相關…

大模型本地部署系列(3) Ollama部署QwQ[阿里云通義千問]

大家好,我是AI研究者, 今天教大家部署 一個阿里云通義千問大模型。 QwQ大模型簡介 QwQ是由阿里云通義千問(Qwen)團隊推出的開源推理大模型,專注于提升AI在數學、編程和復雜邏輯推理方面的能力。其核心特點包括&#x…

微信小程序學習實錄12:掌握大數據量軌跡展示的MySQL結構設計

獲取經緯度信息后,mysql建立數據表po_trajectory,字段包含tra_id、longitude、latitude、tra_time和openid。 為微信小程序創建的 po_trajectory 數據表,字段包含 tra_id、longitude、latitude、tra_time 和 openid,從結構設計上…

計算機系統---性能指標(3)續航與散熱

計算機電池續航的性能指標 一、電池基礎物理指標 電池容量(核心指標) 單位: 毫安時(mAh):常見于手機/平板,反映電池存儲電荷量,需結合電壓計算實際能量(如3.7V電池&…

貪心算法之最小生成樹問題

1. 貪心算法的基本思想 貪心算法在每一步都選擇局部最優的邊,希望最終得到整體最優的生成樹。常見的兩種 MST 算法為 Kruskal 算法 和 Prim 算法。這兩者均滿足貪心選擇性質和最優子結構性質,即: 貪心選擇性質:局部最優選擇&…

LeetCode hot 100—編輯距離

題目 給你兩個單詞 word1 和 word2, 請返回將 word1 轉換成 word2 所使用的最少操作數 。 你可以對一個單詞進行如下三種操作: 插入一個字符刪除一個字符替換一個字符 示例 示例 1: 輸入:word1 "horse", word2 &q…

2.3 Spark運行架構與流程

Spark運行架構與流程包括幾個核心概念:Driver負責提交應用并初始化作業,Executor在工作節點上執行任務,作業是一系列計算任務,任務是作業的基本執行單元,階段是一組并行任務。Spark支持多種運行模式,包括單…

NO.82十六屆藍橋杯備戰|動態規劃-從記憶化搜索到動態規劃|下樓梯|數字三角形(C++)

記憶化搜索 在搜索的過程中,如果搜索樹中有很多重復的結點,此時可以通過?個"備忘錄",記錄第?次搜索到的結果。當下?次搜索到這個結點時,直接在"備忘錄"??找結果。其中,搜索樹中的?個?個結點…

使用 VBA 宏創建一個選擇全部word圖片快捷指令,進行圖片格式編輯

使用 VBA 宏批量選擇圖片 ? 第一步:創建 .dotm 加載項文件 1、使用環境 office word 365,文件格式為.docx 圖片格式為.PNG 2、創建 .dotm 加載項文件 打開 Word,新建一個空白文檔。 按下 Alt F11 打開 VBA 編輯器。 點擊菜單欄&#xff…

深度學習的下一個突破:從圖像識別到情境理解

引言 過去十年,深度學習在圖像識別領域取得了驚人的突破。從2012年ImageNet大賽上的AlexNet,到后來的ResNet、EfficientNet,再到近年來Transformer架構的崛起,AI已經能在許多任務上超越人類,比如人臉識別、目標檢測、醫…

使用dyn4j做碰撞檢測

文章目錄 前言一、環境準備添加依賴基本概念 二、實現步驟1.創建世界2.添加物體3.設置碰撞監聽器4.更新世界 三、完整代碼示例四、優化補充總結 前言 dyn4j 提供了高效的碰撞檢測和物理模擬功能,適用于游戲開發、動畫制作以及其他需要物理交互的場景。通過簡單的 A…

VS Code settings.json 文件中常用的預定義變量?及其用途說明

VS Code settings.json 常用預定義變量 以下是 Visual Studio Code 配置文件中常用的預定義變量列表: 1. 工作區相關變量 變量描述示例值${workspaceFolder}當前工作區根目錄的絕對路徑C:/projects/my-project${workspaceFolderBasename}工作區文件夾名稱&#x…

elasticSearch-搜索引擎

搜索引擎的優勢 有了數據庫分頁查詢,為什么還需要搜索引擎? 搜索引擎速度上很快數據庫分頁查詢,隨著數據庫數據量增大,頁數靠后,會導致搜索速度變慢,但是搜索引擎不會搜索引擎支持分詞查詢,地…

安裝OpenJDK1.8 17 (macos M芯片)

安裝OpenJDK 1.8 下載完后,解壓,打開 環境變量的配置文件即可 vim ~/.zshrc #export JAVA_HOME/Users/xxxxx/jdk-21.jdk/Contents/Home #export JAVA_HOME/Users/xxxxx/jdk-17.jdk/Contents/Home #export JAVA_HOME/Users/xxxxx/jdk-11.jdk/Contents…