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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python2與python3的八個(gè)主要區(qū)別

汽車玩家 ? 來源:碼農(nóng)阿勇 ? 作者:碼農(nóng)阿勇 ? 2020-01-19 17:27 ? 次閱讀

python這門語言中有兩個(gè)重要的版本,一個(gè)是python2,一個(gè)是python3。

Python 2于2000年10月16日發(fā)布,穩(wěn)定版本是Python 2.7。Python 3于2008年12月3日發(fā)布,不完全兼容Python 2。對于初學(xué)者來說,要選擇python3進(jìn)行學(xué)習(xí),畢竟它代表未來。

公司產(chǎn)品開發(fā)中,有個(gè)別產(chǎn)品可能開發(fā)比較早,采用的是python2.x版本開發(fā)的,對于沒有接觸過python2.x版本的人來說,看到或修改這些代碼會(huì)感覺很怪異,其實(shí)我們只要掌握python2和python3的主要區(qū)別就夠了,下面勇哥給大家分享下python2和python3的主要區(qū)別。

1、 print用法差異比較大

如果要打印某個(gè)信息

2、 用戶輸入函數(shù)不同

用戶輸入不同,python3中只有input(),它返回的都是str類型,python2中的raw_input()是用來接收字符串的,python2中也有input(),輸入字符串時(shí)需要帶上引號(hào),表示你輸入的是字符串,輸入數(shù)字不需帶。

3、 字符串編碼的改變

Python2默認(rèn)ASCII編碼方式,但是ASCII編碼無法對中文等字符進(jìn)行有效編碼,因此在涉及到中文及其它字符編碼問題時(shí),ASCII不僅無能為力,經(jīng)常會(huì)帶來意想不到的錯(cuò)誤。Python 3 默認(rèn)采用了 UTF-8 作為默認(rèn)編碼,因此不需要在文件頂部寫 # coding=utf-8 。

4、整數(shù)類型的改變

python3 徹底廢棄了 long+int 雙整數(shù)實(shí)現(xiàn)的方法, 統(tǒng)一為 int , 支持高精度整數(shù)運(yùn)算。int的表示范圍相當(dāng)于其他語言中的long long int類型。

5、除法符號(hào)表示的意義不同

原來python2中執(zhí)行1/2(兩個(gè)整數(shù)相除)結(jié)果是0,現(xiàn)在python3中執(zhí)行就是0.5了

6、Python2以前沒有布爾型,0表示False,1表示True;Python3 把 True 和 False 定義成關(guān)鍵字,它們的值是 1 和 0,可以和數(shù)字運(yùn)算。

7、pthony2中range()內(nèi)置函數(shù)直接生成列表(量大占內(nèi)存會(huì)死機(jī)),pthony3中只有range()和python2中的xrang()一樣都只生成一個(gè)生成器。python3中沒有xrange()這個(gè)內(nèi)置函數(shù)。

8、創(chuàng)建類時(shí),python2分為經(jīng)典類和新式類,新式類就是繼承object的類,經(jīng)典類是沒有繼承的類,而python3中全部是新式類,默認(rèn)繼承object。在屬性查找時(shí),經(jīng)典類查找方式為深度優(yōu)先,新式類是廣度優(yōu)先。

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

    關(guān)注

    56

    文章

    4797

    瀏覽量

    84695
收藏 人收藏

    評論

    相關(guān)推薦

    使用Python進(jìn)行串口通信的案例

    當(dāng)然!以下是一個(gè)使用Python進(jìn)行串口通信的簡單示例。這個(gè)示例展示了如何配置串口、發(fā)送數(shù)據(jù)以及接收數(shù)據(jù)。我們將使用 pyserial 庫,這是一個(gè)非常流行的用于串口通信的Python
    的頭像 發(fā)表于 11-22 09:11 ?205次閱讀

    使用Python進(jìn)行圖像處理

    下面是一個(gè)關(guān)于使用Python在幾行代碼中分析城市輪廓線的快速教程。
    的頭像 發(fā)表于 11-07 10:14 ?224次閱讀
    使用<b class='flag-5'>Python</b>進(jìn)行圖像處理

    Python中多線程和多進(jìn)程的區(qū)別

    Python作為一種高級(jí)編程語言,提供了多種并發(fā)編程的方式,其中多線程與多進(jìn)程是最常見的兩種方式之一。在本文中,我們將探討Python中多線程與多進(jìn)程的概念、區(qū)別以及如何使用線程池與進(jìn)程池來提高并發(fā)執(zhí)行效率。
    的頭像 發(fā)表于 10-23 11:48 ?402次閱讀
    <b class='flag-5'>Python</b>中多線程和多進(jìn)程的<b class='flag-5'>區(qū)別</b>

    INA188與AD620的主要區(qū)別是什么?

    INA188與AD620的主要區(qū)別是什么?
    發(fā)表于 08-16 13:13

    pytorch和python的關(guān)系是什么

    ,PyTorch已經(jīng)成為了一個(gè)非常受歡迎的框架。本文將介紹PyTorch和Python之間的關(guān)系,以及它們在深度學(xué)習(xí)領(lǐng)域的應(yīng)用。 Python簡介 Python是一種高級(jí)、解釋型、通用
    的頭像 發(fā)表于 08-01 15:27 ?1972次閱讀

    dwdm與wdm的主要區(qū)別

    光纖通信中廣泛使用的多路復(fù)用技術(shù)。它們的主要區(qū)別在于波長間隔、系統(tǒng)容量、成本和應(yīng)用領(lǐng)域等方面。 波長間隔 DWDM和WDM的主要區(qū)別在于它們使用的波長間隔。WDM技術(shù)使用較大的波長間隔,通常在20nm到
    的頭像 發(fā)表于 07-18 10:34 ?822次閱讀

    Python語言基礎(chǔ)2

    電子發(fā)燒友網(wǎng)站提供《Python語言基礎(chǔ)2.rar》資料免費(fèi)下載
    發(fā)表于 07-17 17:23 ?1次下載

    opencv-python和opencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一個(gè)開源的計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)軟件庫,它提供了大量的圖像和視頻處理功能。OpenCV-Python
    的頭像 發(fā)表于 07-16 10:38 ?1195次閱讀

    用pycharm進(jìn)行python爬蟲的步驟

    以下是使用PyCharm進(jìn)行Python爬蟲的步驟: 安裝PyCharm和Python 首先,您需要安裝PyCharm和Python。PyCharm是一個(gè)流行的
    的頭像 發(fā)表于 07-11 10:11 ?851次閱讀

    DCS系統(tǒng)與PLC系統(tǒng)的主要區(qū)別

    在工業(yè)自動(dòng)化領(lǐng)域,DCS(分布式控制系統(tǒng))和PLC(可編程邏輯控制器)是兩個(gè)至關(guān)重要的控制系統(tǒng)。它們各自具有獨(dú)特的特點(diǎn)和優(yōu)勢,適用于不同的工業(yè)環(huán)境和控制需求。本文將對DCS系統(tǒng)和PLC系統(tǒng)的主要區(qū)別進(jìn)行詳細(xì)的分析和討論,旨在幫助讀者更好地理解和選擇適合自己應(yīng)用需求的控制系
    的頭像 發(fā)表于 06-06 18:06 ?1310次閱讀

    Python自動(dòng)化測試框架及其應(yīng)用

    Pytest是一個(gè)非常成熟的全功能的Python測試框架,與python自帶的unittest測試框架類似,但是比unittest框架使用起來更簡潔,功能更強(qiáng)大。
    的頭像 發(fā)表于 04-03 16:15 ?555次閱讀
    <b class='flag-5'>Python</b>自動(dòng)化測試框架及其應(yīng)用

    CCG3PA系列與CCG7D系列的主要區(qū)別是什么?

    尊敬的工程師,您好, 1、我想了解一下CCG3PA系列與CCG7D系列的主要區(qū)別有哪些,有沒有相關(guān)對照表參考。 2、我看了相關(guān)資料兩款芯片都支持后座娛樂系統(tǒng),這樣的話,如果客戶在功率方面要求較低
    發(fā)表于 02-27 07:56

    【米爾-瑞薩RZ/G2UL開發(fā)板】2.串口通信與WIFI測試

    Python 測速 沒想到這個(gè)板子里面,python2python3 都有。 覆蓋掉 python2 rm /usr/bin/python
    發(fā)表于 02-05 19:33

    如何使用linux下gdb來調(diào)試python程序

    如何使用linux下gdb來調(diào)試python程序? 在Linux下,可以使用GDB(GNU調(diào)試器)來調(diào)試Python程序。GDB是一個(gè)強(qiáng)大的調(diào)試工具,可以幫助開發(fā)者診斷和修復(fù)程序中的錯(cuò)誤。在本文
    的頭像 發(fā)表于 01-31 10:41 ?2625次閱讀

    如何解決Python爬蟲中文亂碼問題?Python爬蟲中文亂碼的解決方法

    Python爬蟲中文亂碼問題。 一、了解字符編碼 在解決亂碼問題之前,我們首先需要了解一些基本的字符編碼知識(shí)。常見的字符編碼有ASCII、UTF-8和GBK等。 1. ASCII:是一種用于表示英文字母、數(shù)字和常用符號(hào)的字符編碼,它使用一個(gè)字節(jié)(8位)來表示一
    的頭像 發(fā)表于 01-12 15:11 ?2405次閱讀