欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺述python2與python3的簡單區(qū)別

 更新時間:2018年09月19日 09:32:20   作者:shengnan_only  
python2:print語句,語句就意味著可以直接跟要打印的東西而python3:print函數(shù),函數(shù)就以為這必須要加上括號才能調(diào)用。下面通過本文給大家介紹python2與python3的簡單區(qū)別,感興趣的朋友跟隨小編一起看看吧

python2:print語句,語句就意味著可以直接跟要打印的東西,如果后面接的是一個元組對象,直接打印

python3:print函數(shù),函數(shù)就以為這必須要加上括號才能調(diào)用,如果接元組對象,可以接收多個位置參數(shù),并可以打印

1、表達式

在 Python 2 中為獲得計算表達式,你會鍵入:

X = raw_input ("enter some values)

但在 Python 3 中,你會鍵入:

X = input ("enter some values")

因此,無論我們輸入什么,值都會分配給 2 和 3 中的變量 x。當在 Python 2 中輸入 2*6 時,結(jié)果將是 12,這是評估值。

但是,當在 Python 3 中運行相同的程序時,結(jié)果是字符串值。 在這種情況下,它看起來像字符串格式的 2*6。

那么,我們?nèi)绾潍@得評估表達式呢? 現(xiàn)在,我們必須使用一個名為 eval 的表達式或函數(shù)。 當您在輸入之前編寫 eval 時,它會將表達式轉(zhuǎn)換為計算值。

x= eval(input("enter some values")) = 12

具體表達式示例:

在 Python 2 中:

name = input("What is your name? ")print ("Hello, %s." %name)

然后輸出:

在 Python 3 中:

name = input("What is your name? ")print ("Hello, %s." %name)

然后輸出:

我們可以清楚地看到,他們之間的差異很小。

2、Print 選項

在 Python 2 中,print 是一個不需要括號的語句。 在 Python 3 中,print 是一個函數(shù),值需要用括號括起來。

Python 2

輸入:

print "hello world"

會輸出:

Python 3

輸入:

1 != 1.0print (False)

會輸出:

3、Unequal 操作

當我們在 Python 2 中使用 Unequal 運算符時,我們需要使用大于 > 或小于 < 符號。 但是,在 Python 3 中,有一個通用運算符。 感嘆號 ! 和等號 = 用于表示值是否相等。

Python 2 -<> 運算符表示不相等
Python 3 -! 運算符表示不相等

Python 2

輸入:

1 <> 1.0print "False"

會輸出:

Python 3

輸入:

1 != 1.0print (False)1 != 1.0print (False)

會輸出:

4、Range

Range 用于生成數(shù)字列表,通常用于迭代 for 循環(huán)。

在這里你可以看到 X 等于 Range 10。當我們檢查變量 X 時,它返回了列表類型。 這意味著在 Python 2 中,Range 是列表的類型。當我寫 X 之后,得到一個對象列表,這里是:0 1 2 3 4 5 6 7 8 9。

現(xiàn)在讓我們轉(zhuǎn)到 Python 3,當我們寫 X 等于 Range 5,這個值就被賦給變量 X;當我們檢查變量 X 的類型時,它會返回一個 Range 對象本身。 這意味著在 Python 3 中,Range 是一個范圍對象本身。

Python 2

輸入:

print range(0,10,1)

會輸出:

Python 3

輸入:

print(list(range(10)))

會輸出:

5、自動遷移

那么,我們?nèi)绾巫詣訄?zhí)行腳本以將代碼從 Python 2 移動到 3?

在這里,我們可以使用 Python 中的 Add 2 Numbers 進行測試。

Python 2

輸入:

n1 = 1n2 = 2add = float(n1) + float(n2)print 'sum of {0} and {1} is {2}'.format(n1, n2, add)

會輸出:

現(xiàn)在使用 2to3 的遷移,我們可以轉(zhuǎn)換上面的代碼。

輸入:

n1 = 1n2 = 2add = float(n1) + float(n2)
print('sum of {0} and {1} is {2}'.format(n1, n2, add))

會輸出:

所以在這里我們看到它可以在命令行上通過 2to3 轉(zhuǎn)換為 Python 3 代碼。

Python 提供了自己的工具,名為 2to3.py,它運行了一堆腳本來將你的 Python 2 代碼轉(zhuǎn)換為 3。雖然它并不完美,但它總體上做得非常出色。轉(zhuǎn)換任何代碼后,您可以手動修復任何問題。

6、性能問題

此升級中已修復了大多數(shù)性能問題! 在比較兩個版本之間的基準時,差異幾乎可以忽略不計。

7、一些主要的內(nèi)部事務變更

Python 2

•print 功能括號選填。

•使用 u 作為前綴字符串以生成 unicode 字符串。

•整數(shù)除法總是返回整數(shù) -5/2=2。

•Raw_input() 讀取字符串。

•input() 評估讀取的數(shù)據(jù)。

•generator .next()。

Python 3:

•print 功能括號必填。

•默認情況下為字符串 unicode。

•整數(shù)除法可能導致浮動 -5/2=2.5。

•Raw_input() 不可用。

•輸入始終讀取字符串。

•Next (generator)。

•Py2 to py3 實用程序。

•Dictionary .keys() 和 .values() 返回的為視圖不是列表。

•在非自然比較中不能再使用比較運算符。

 例如,None < None 將引發(fā) TypeError 而不是返回 false。

•不推薦使用百分比(%)字符串格式化運算符,使用 .format() 函數(shù)或連接。

下面把python2與python3的區(qū)別簡單總結(jié)以下八點

     一、python2  的代碼混亂 重復較多 冗余  因為當時來編寫的人有C 語言的大牛 和 java的大牛等各種大神 所以里面都含有各種語言的影子

            python3  經(jīng)過龜叔的一個暑假的整理 終于在2018年11月 統(tǒng)一了代碼  源碼規(guī)范 清晰 簡單優(yōu)美。

    二、python3  print("內(nèi)容")

           python2 ptint()   或者print '內(nèi)容'

   三、python3 編碼:utf-8

          python2編碼: 默認編碼:ascii     解決辦法:在首行 #    -*- encoding:utf-8-*-

   四、用戶交互 input

          python2:  raw-input()

          python3:input () 

五、python2x  :unicode 默認2個字節(jié)表示一個字符  可以在LINUX 編譯安裝時做調(diào)整

      python3x:unicode 默認是4個字節(jié)表示一個字符

六、python2x  沒有nonlocal

      python3x   加入的

七 、python3x  新建的包里面的init文件如果你刪除該文件  包照樣可以被調(diào)用

        python2x  新建的包如果沒有init文件 則包不能夠被調(diào)用 直接報錯

八、python2 中的經(jīng)典類 遍歷方法是以深度優(yōu)先    新式類是以廣度優(yōu)先

      python3 中不存在經(jīng)典類  所有的類都是新式類  所以都是廣度優(yōu)先

總結(jié)

以上所述是小編給大家介紹的python2與python3的簡單區(qū)別,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • 一文詳解Python中的zip函數(shù)

    一文詳解Python中的zip函數(shù)

    在Python中,處理數(shù)據(jù)時經(jīng)常需要同時遍歷多個序列,zip函數(shù)提供了一種簡潔的方式來組合這些序列,它用于將多個可迭代對象(如列表、元組等)的元素配對,本文將給大家詳細介紹一下Python中的zip函數(shù),需要的朋友可以參考下
    2024-05-05
  • python中sys.argv函數(shù)精簡概括

    python中sys.argv函數(shù)精簡概括

    本篇文章給大家分享了關于python中sys.argv函數(shù)的相關知識點,有興趣的朋友可以參考學習下。
    2018-07-07
  • 使用 Python 合并多個格式一致的 Excel 文件(推薦)

    使用 Python 合并多個格式一致的 Excel 文件(推薦)

    這篇文章主要介紹了使用 Python 合并多個格式一致的 Excel 文件,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • RC4文件加密的python實現(xiàn)方法

    RC4文件加密的python實現(xiàn)方法

    這篇文章主要介紹了RC4文件加密的python實現(xiàn)方法,實例分析了RC4文件加密的原理與Python實現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • 詳解如何使用Python網(wǎng)絡爬蟲獲取招聘信息

    詳解如何使用Python網(wǎng)絡爬蟲獲取招聘信息

    在疫情階段,想找一份不錯的工作變得更為困難,很多人會選擇去網(wǎng)上看招聘信息??墒钦衅感畔⒂幸恍┦清e綜復雜的。本文將為大家介紹用Python爬蟲獲取招聘信息的方法,需要的可以參考一下
    2022-03-03
  • 使用python實現(xiàn)深度優(yōu)先遍歷搜索(DFS)的示例代碼

    使用python實現(xiàn)深度優(yōu)先遍歷搜索(DFS)的示例代碼

    深度優(yōu)先搜索算法(Depth-First-Search,DFS)是一種用于遍歷或搜索樹或圖的算法,沿著樹的深度遍歷樹的節(jié)點,盡可能深的搜索樹的分支,本文給大家介紹了如何基于python實現(xiàn)深度優(yōu)先遍歷搜索(DFS),需要的朋友可以參考下
    2024-01-01
  • Python中的數(shù)據(jù)分析詳解

    Python中的數(shù)據(jù)分析詳解

    這篇文章主要介紹了Python中的數(shù)據(jù)分析詳解,對數(shù)據(jù)進行分析,數(shù)據(jù)分析是指根據(jù)分析目的,用適當?shù)慕y(tǒng)計分析方法及工具,對收集來的數(shù)據(jù)進行處理與分析,提取有價值的信息,發(fā)揮數(shù)據(jù)的作用,需要的朋友可以參考下
    2023-07-07
  • python3中_from...import...與import?...之間的區(qū)別詳解(包/模塊)

    python3中_from...import...與import?...之間的區(qū)別詳解(包/模塊)

    Python編碼第一步是導入模塊,有時候用import?***有時候用from...import,下面這篇文章主要給大家介紹了關于python3中_from...import...與import?...之間區(qū)別的相關資料,需要的朋友可以參考下
    2022-08-08
  • Python如何使用Gitlab API實現(xiàn)批量的合并分支

    Python如何使用Gitlab API實現(xiàn)批量的合并分支

    這篇文章主要介紹了Python如何使用Gitlab API實現(xiàn)批量的合并分支,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • Python3實現(xiàn)從文件中讀取指定行的方法

    Python3實現(xiàn)從文件中讀取指定行的方法

    這篇文章主要介紹了Python3實現(xiàn)從文件中讀取指定行的方法,涉及Python中l(wèi)inecache模塊操作文件的使用技巧,需要的朋友可以參考下
    2015-05-05

最新評論