哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python字符與字節(jié)

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:了不起 ? 2023-07-05 15:55 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一個字符不等價于一個字節(jié),字符是人類能夠識別的符號,而這些符號要保存到計算的存儲中就需要用計算機能夠識別的字節(jié)來表示。一個字符往往有多種表示方法,不同的表示方法會使用不同的字節(jié)數(shù)。這里所說的不同的表示方法就是指字符編碼,比如字母A-Z都可以用ASCII碼表示(占用一個字節(jié)),也可以用UNICODE表示(占兩個字節(jié)),還可以用UTF-8表示(占用一個字節(jié))。字符編碼的作用就是將人類可識別的字符轉換為機器可識別的字節(jié)碼,以及反向過程。

UNICDOE才是真正的字符串,而用ASCII、UTF-8、GBK等字符編碼表示的是字節(jié)串。關于這點,我們可以在Python的官方文檔中經常可以看到這樣的描述"Unicode string" , " translating a Unicode string into a sequence of bytes"

我們寫代碼是寫在文件中的,而字符是以字節(jié)形式保存在文件中的,因此當我們在文件中定義個字符串時被當做字節(jié)串也是可以理解的。但是,我們需要的是字符串,而不是字節(jié)串。一個優(yōu)秀的編程語言,應該嚴格區(qū)分兩者的關系并提供巧妙的完美的支持。JAVA語言就很好,以至于了解Python和PHP之前我從來沒有考慮過這些不應該由程序員來處理的問題。遺憾的是,很多編程語言試圖混淆“字符串”和“字節(jié)串”,他們把字節(jié)串當做字符串來使用,PHP和Python2都屬于這種編程語言。最能說明這個問題的操作就是取一個包含中文字符的字符串的長度:

  • 對字符串取長度,結果應該是所有字符串的個數(shù),無論中文還是英文
  • 對字符串對應的字節(jié)串取長度,就跟編碼(encode)過程使用的字符編碼有關了(比如:UTF-8編碼,一個中文字符需要用3個字節(jié)來表示;GBK編碼,一個中文字符需要2個字節(jié)來表示)

注意:Windows的cmd終端字符編碼默認為GBK,因此在cmd輸入的中文字符需要用兩個字節(jié)表示

>>> # Python2

>>> a = 'Hello,中國' # 字節(jié)串,長度為字節(jié)個數(shù) = len('Hello,')+len('中國') = 6+2*2 = 10

>>> b = u'Hello,中國' # 字符串,長度為字符個數(shù) = len('Hello,')+len('中國') = 6+2 = 8

>>> c = unicode(a, 'gbk') # 其實b的定義方式是c定義方式的簡寫,都是將一個GBK編碼的字節(jié)串解碼(decode)為一個Uniocde字符串

>>>

>>> print(type(a), len(a))

(, 10)

>>> print(type(b), len(b))

(, 8)

>>> print(type(c), len(c))

(, 8)

>>>

Python3中對字符串的支持做了很大的改動。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編碼
    +關注

    關注

    6

    文章

    1040

    瀏覽量

    57106
  • 字符
    +關注

    關注

    0

    文章

    237

    瀏覽量

    26266
  • python
    +關注

    關注

    58

    文章

    4882

    瀏覽量

    90281
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    探究python字節(jié)

    就是Python的“字節(jié)碼”文件。(但在Python 3上卻難覓其蹤 -- 原因是它們不再與.py文件出現(xiàn)在同一個目錄中,而是放在一個名為__pycache__的子目錄中了)?;蛟S你也已聽說過這是一種
    發(fā)表于 05-22 15:48

    python字符串拼接方式了解

    python字符串拼接的方式 在Python的實際開發(fā)中,很多都需要用到字符串拼接,python字符
    發(fā)表于 12-06 10:09 ?1199次閱讀

    字符流和字節(jié)流有什么那區(qū)別

    字符流在Java中,根據(jù)處理的數(shù)據(jù)單位不同,分為字節(jié)流和字符流。字符流是由字符組成的,例如 FileReader、FileWriter、Bu
    發(fā)表于 12-20 17:46 ?9512次閱讀
    <b class='flag-5'>字符</b>流和<b class='flag-5'>字節(jié)</b>流有什么那區(qū)別

    Python轉義字符使用總結資料免費下載

    本文檔的主要內容詳細介紹的是Python轉義字符使用總結資料免費下載主要內容包括了:Python轉義字符Python
    發(fā)表于 01-17 17:24 ?6次下載
    <b class='flag-5'>Python</b>轉義<b class='flag-5'>字符</b>使用總結資料免費下載

    什么是復制字符串?Python如何復制字符

    連續(xù)幾篇文章都在寫 Python 字符串,這出乎我的意料了。但是,有的問題,不寫不行,特別是那種靈機一動想到的問題,最后你發(fā)現(xiàn),很多人根本不懂卻又誤以為自己懂了。那就繼續(xù)刨根問底,探究個明白吧
    發(fā)表于 11-25 10:32 ?3656次閱讀

    Python字符的實例詳細說明

    本文檔的主要內容詳細介紹的是Python字符的實例詳細說明包括了:Python 轉義字符,Python
    發(fā)表于 10-14 17:13 ?7次下載
    <b class='flag-5'>Python</b><b class='flag-5'>字符</b>的實例詳細說明

    Python字符數(shù)統(tǒng)計函數(shù)程序

    Python字符數(shù)統(tǒng)計函數(shù)程序免費下載。
    發(fā)表于 05-25 14:35 ?19次下載

    2.2 python字符串類型

    2.2 python字符串類型 1. 如何定義字符串? 字符串是Python中最常用的數(shù)據(jù)類型之一。 使用單引號或雙引號來創(chuàng)建
    的頭像 發(fā)表于 02-17 17:08 ?2624次閱讀

    Python-字符

    字符串就是 一串字符 ,是編程語言中表示文本的數(shù)據(jù)類型,在Python中使用一對雙引號 "" 或者一對單引號來定義.
    的頭像 發(fā)表于 02-16 15:05 ?2333次閱讀
    <b class='flag-5'>Python</b>-<b class='flag-5'>字符</b>串

    python字符串有哪些特定方法

    python字符串序列操作也適用于列表和元組。 python字符串還有獨有方法,即字符串對象的函數(shù),其他對象不可調用,只有
    的頭像 發(fā)表于 02-23 15:02 ?1788次閱讀

    python字符串編寫有哪些方法

    python通過反斜杠\開頭來轉義特殊字符。比如用’\n’轉義換行符。 len()函數(shù)中,一個轉義字符占1個長度。
    的頭像 發(fā)表于 02-23 15:02 ?1018次閱讀

    淺析python字符串模式匹配

    python字符串可以通過re模塊的模式匹配來處理文本。
    的頭像 發(fā)表于 02-23 15:04 ?2993次閱讀

    Python2與Python3中對字符串的支持

    其實Python3中對字符串支持的改進,不僅僅是更改了默認編碼,而是重新進行了字符串的實現(xiàn),而且它已經實現(xiàn)了對UNICODE的內置支持,從這方面來講Python已經和JAVA一樣優(yōu)秀。
    的頭像 發(fā)表于 07-05 16:15 ?1506次閱讀

    Python字符編碼轉換

    UNICODE字符串可以與任意字符編碼的字節(jié)進行相互轉換,如圖: 那么大家很容易想到一個問題,就是不同的字符編碼的字節(jié)可以通過Unicode
    的頭像 發(fā)表于 07-05 16:25 ?2032次閱讀
    <b class='flag-5'>Python</b><b class='flag-5'>字符</b>編碼轉換

    字節(jié)流和字符流有什么區(qū)別?看完就知道!

    字節(jié)流和字符流有什么區(qū)別?看完就知道! 字節(jié)流和字符流是Java I/O系統(tǒng)中的兩個重要概念,用于處理輸入和輸出的數(shù)據(jù)。 首先,字節(jié)流是以
    的頭像 發(fā)表于 12-09 14:57 ?2468次閱讀
    沾化县| 治县。| 含山县| 铜鼓县| 云和县| 沙河市| 岑溪市| 怀宁县| 木里| 西充县| 南阳市| 晋州市| 楚雄市| 石台县| 乌恰县| 垦利县| 镇宁| 沙洋县| 买车| 会昌县| 大荔县| 额济纳旗| 左权县| 新丰县| 襄垣县| 商丘市| 仲巴县| 外汇| 桓台县| 鹤庆县| 托克逊县| 晋江市| 四川省| 尚义县| 新野县| 灵川县| 都匀市| 新竹市| 买车| 河津市| 白城市|