符合Python風格的對象(對象表示形式)

對象表示形式

每門面向對象的語言至少都有一種獲取對象的字符串表示形式的標準方
式。Python 提供了兩種方式。

  • repr()
      以便于開發者理解的方式返回對象的字符串表示形式。
  • str()
      以便于用戶理解的方式返回對象的字符串表示形式。

正如你所知,我們要實現__repr__ 和__str__ 特殊方法,為 repr()
和 str() 提供支持。

為了給對象提供其他的表示形式,還會用到另外兩個特殊方
法:bytes 和__format__。bytes 方法與__str__ 方法類
似:bytes() 函數調用它獲取對象的字節序列表示形式。而__format__ 方法會被內置的 format() 函數和 str.format() 方法調
用,使用特殊的格式代碼顯示對象的字符串表示形式。我們將在下一個
示例中討論__bytes__ 方法,隨后再討論__format__ 方法。

如果你是從 Python 2 轉過來的,記住,在 Python 3
中,repr,__str__和__format__都必須返回 Unicode 字
符串(str 類型)。只有__bytes__方法應該返回字節序列
(bytes 類型)。

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

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

相關文章

springboot配置tomcat端口的方法

在Spring Boot中配置Tomcat端口可通過以下方法實現: 配置文件方式 properties格式 在application.properties中添加:server.port8081YAML格式 在application.yml中添加:server:port: 8082多環境配置 創建不同環境的配置文件(如app…

DeepSeek指令微調與強化學習對齊:從SFT到RLHF

后訓練微調的重要性 預訓練使大模型獲得豐富的語言和知識表達能力,但其輸出往往與用戶意圖和安全性需求不完全匹配。業內普遍采用三階段訓練流程:預訓練 → 監督微調(SFT)→ 人類偏好對齊(RLHF)。預訓練階段模型在大規模語料上學習語言規律;監督微調利用人工標注的數據…

Maven 插件擴展點與自定義生命周期

🧑 博主簡介:CSDN博客專家,歷代文學網(PC端可以訪問:https://literature.sinhy.com/#/?__c1000,移動端可微信小程序搜索“歷代文學”)總架構師,15年工作經驗,精通Java編…

ecmascript 第6版特性 ECMA-262 ES6

https://blog.csdn.net/zlpzlpzyd/article/details/146125018 在之前寫的文章基礎上,ES6在export和import的基礎外,還有如下特性 特性說明let/const塊級作用域變量聲明>箭頭函數Promise異步編程

CT重建筆記(五)—2D平行束投影公式

寫的又回去了,因為我發現我理解不夠透徹,反正想到啥寫啥,盡量保證內容質量好簡潔易懂 2D平行束投影公式 p ( s , θ ) ∫ ∫ f ( x , y ) δ ( x c o s θ y s i n θ ? s ) d x d y p(s,\theta)\int \int f(x,y)\delta(x cos\theta ysi…

記一次緩存填坑省市區級聯獲取的操作

先說緩存是什么? 緩存主要是解決高并發,大數據場景下,熱點數據快速訪問。緩存的原則首先保證數據的準確和最終數據一致,其次是距離用戶越近越好,同步越及時越好。 再說我們遇到的場景: 接手項目后&#…

無法加載文件 E:\Program Files\nodejs\npm.ps1,因為在此系統上禁止運行腳本

遇到“無法加載文件 E:\Program Files\nodejs\npm.ps1,因為在此系統上禁止運行腳本”這類錯誤,通常是因為你的 PowerShell 執行策略設置為不允許運行腳本。在 Windows 系統中,默認情況下,出于安全考慮,PowerShell 可能會阻止運行未…

OpenWebUI新突破,MCPO框架解鎖MCP工具新玩法

大家好,Open WebUI 迎來重要更新,現已正式支持 MCP 工具服務器,但 MCP 工具服務器需由兼容 OpenAPI 的代理作為前端。mcpo 是一款實用代理,經測試,它能讓開發者使用 MCP 服務器命令和標準 OpenAPI 服務器工具&#xff…

松下SMT貼片機選型與高效應用指南

內容概要 在電子制造領域,SMT貼片機作為核心生產設備,其選型與應用直接關系到企業產能與產品質量。本文聚焦松下SMT貼片機系列,通過系統性梳理設備選型邏輯與技術特性,為制造企業提供多維度的決策參考。重點涵蓋主流機型性能參數…

計算機網絡(1)——概述

1.計算機網絡基本概念 1.1 什么是計算機網絡 計算機網絡的產生背景 在計算機網絡出現之前,計算機之間都是相互獨立的,每臺計算機只能訪問自身存儲的數據,無法與其他計算機進行數據交換和資源共享。這種獨立的計算機系統存在諸多局限性&#…

React學習(二)-變量

也是很無聊,竟然寫這玩意,畢竟不是學術研究,普通工作沒那么多概念性東西,會用就行╮(╯▽╰)╭ 在React中,變量是用于存儲和管理數據的基本單位。根據其用途和生命周期,React中的變量可以分為以下幾類&…

完整卸載 Fabric Manager 的方法

目錄 ? 完整卸載 Fabric Manager 的方法 1?? 停止并禁用服務 2?? 卸載 Fabric Manager 軟件包 3?? 自動清理無用依賴(可選) 4?? 檢查是否卸載成功 ? 補充(僅清除服務,不刪包) ? 完整卸載 Fabric Mana…

ABP vNext 多租戶開發實戰指南

🚀 ABP vNext 多租戶開發實戰指南 🛠? 環境:.NET 8.0 ABP vNext 8.1.5 (C# 11, EF Core 8) 📚 目錄 🚀 ABP vNext 多租戶開發實戰指南🏠 一、什么是多租戶?📦 二、ABP 多租戶的核…

【WIN】筆記本電腦忘記密碼解決辦法/筆記本電腦重裝系統筆記/bitlocker忘記密碼的解決辦法

通過安全模式下的CMD命令找回 具體的步驟就是: 首先通過筆記本的對應的一個進入安全模式的一個方式 進入安全模式之后,一直點著這個診斷,然后高級選項進去就可以看到了。 但是這種方法應該是屬于安全漏洞,所以只適合老版本。如果是…

人工智能100問?第25問:什么是循環神經網絡(RNN)?

目錄 一、通俗解釋 二、專業解析 三、權威參考 循環神經網絡(RNN)是一種通過“記憶”序列中歷史信息來處理時序數據的神經網絡,可捕捉前后數據的關聯性,擅長處理語言、語音等序列化任務。 一、通俗解釋 想象你在和朋友聊天,每說一句話都會根據之前的對話內容調整語氣…

實驗八 基于Python的數字圖像問題處理

一、實驗目的 ? 培養利用圖像處理技術解決實際問題的能力。 ? 培養利用圖像處理技術綜合設計實現的能力。 ? 掌握在Python環境下解決實際問題的能力。 ? 熟練掌握使用cv2庫對圖像進行處理 ? 熟練掌握使用區域生長法提取圖片中感興趣的區域 二、實驗內容 本次實驗內容為…

STM32F10xx 參考手冊

6. 什么是寄存器 本章參考資料:《STM32F10xx 參考手冊》、《STM32F10xx數據手冊》、 學習本章時,配合《STM32F10xx 參考手冊》“存儲器和總線架構”及“通用I/O(GPIO)”章節一起閱讀,效果會更佳,特別是涉及到寄存器說明的部分。…

TCVectorDB 向量數據庫簡介

簡介 盡管目前大多數開源向量數據庫來自海外,配置簡單且性能優異,但由于網絡原因,如果向量數據庫部署在海外,而產品面向國內市場,網絡延遲將是必須考慮的問題。因此,選擇國內服務提供商的云向量數據庫往往是…

力扣-比特位計數(統計一個數二進制下1的個數)

下面是題面 1.用c的內置函數__builtin_popcount() 語法:__builtin_popcount(int x),函數會返回一個二進制下x所含的1的個數 2.直接數位枚舉 這是最慢也是暴力做法,寫法也很簡單 用一個while循環…

青少年編程與數學 02-019 Rust 編程基礎 16課題、包、單元包及模塊

青少年編程與數學 02-019 Rust 編程基礎 16課題、包、單元包及模塊 一、包1. **什么是 Crate?**2. **Crate 的類型**3. **Crate 的結構**4. **使用 Crate**5. **創建和管理 Crate**6. **發布 Crate**7. **Crate 的優勢**8. **示例**創建一個 library crate 二、單元…