當前位置:首頁 » 編程語言 » 兩個python

兩個python

發布時間: 2022-01-09 06:24:06

㈠ 兩個python版本,怎麼確定哪個是在用的

很多初學者剛開始學python的時候,一定都遇到過這個問題,python的世界有2個版本,python2 和 python3 ,而且有些語法還不兼容.怎麼辦~~到底應該選擇哪個版本來開發呢?好,今天我們就來聊聊這個話題.

1.Python2和Python3的歷史背景
Python語言是在20世紀90年代誕生的,算算到現在已經是25歲的大叔級的語言了(跟它同一個時代的還有一個鼎鼎大名的java是在1995發行的, 紅了幾十年).
但是Python真正成名比java晚了很多年,其實也主要是應用領域的時代變遷.(猜測為啥,對了大數據的出現)

Python2是Python裡面一個非常重要的版本,最早的版本是從2001的時候開始的,特別是從2006年開始py2.5的發布,python的功能逐漸強大起來,慢慢開始穩定下來,並且差不多1-2年左右遞增一個版本,在08年左右開始慢慢的火起來了.

而Python3最早是從2008開始發布,但是py3.0的版本非常不穩定,所以社區更新的很快,差不多幾個月就更新一次。所以一開始的時候並沒有很多人用,只到2014春暖花開的時候python3.4 deliver了才開始慢慢穩定下來.

下面我們看一個數據,這是Python社區聯和一些網站在2014做的一個調查,關於Python2/3,部分的結果如下:
1).97.51%用戶還在寫Python2的代碼
2).60%的用戶寫Python3的代碼
3).78.09%的用戶更多地寫Python2代碼
4).77.09%的用戶認可Python3

目前有一些linux里的操作系統已經默認使用Python3:
1).Arch Linux (輕量級的Linux操作系統)
2).Ubuntu 16.04 (一個桌面應用為主的Linux操作系統)
3).Fedora(Redhat桌面版本的延續)

2.Python2和Python3的主要區別:
目前最新的數據是,Python有兩個版本:一個是2.7.12版,一個是3.5.12版.

那麼Python2運行的好好的,為啥突然要出個Python3呢,其實是為了解決Python2裡面一些歷史問題
第一個是字元串的問題:
Python 2 中文本和二進制數據是一個爛攤子,Python中的str 是代表二進制數據還是文本數據是有二義性,文字既能代表文本數據又能代表二進制數據這很麻煩,此類錯誤發生的時候,我們很難意識到。

第二個是對Unicode的支持
由於python是在1991年2月開源發布,這意味著它早於在1991年10月發布的第一版 Unicode 標准。在接下來幾年中,晚於 Unicode 標准出現的語言都選擇在支持 Unicode 編碼的基礎上實現自己的 str 類型,這讓 Python 2 處於尷尬的境地。
目前是一個python2/3共存的時代,這兩個版本是不兼容的。
python2現在只是做bug的修復,新硬體和操作系統兼容的相關維護工作。不會再有新的功能加入,python2隻支持到2020年.
現在Python正在朝著3版本進化,在進化過程中,大量的針對2.x版本的代碼要修改後才能運行,所以目前有許多第三方庫還暫時無法在3.x上使用。

不過可以暢想一下,也許再過幾年情況就會好很多,畢竟全世界有很多優秀的程序員正在把一些庫從Py2往Py3上遷移.

3.選擇還是要根據自己的需求
若是企業的開發,要滿足工作的需求,尤其是依賴的軟體只能運行在Python2下,首選Python2.比如你的開發需要依賴大量的第三方的庫(因為學Python非常大的一個原因就是因為它有成千上萬的第三方包),像大量的數據分析,科學計算,還是選Python2吧.

如果你是自己學習,研究的話,願意擁抱變化,那麼建議學Python3,因為它是未來的方向.

結論:
編程其實主要是對編程思想的理解和經驗的積累,千萬不要因為糾結學Py2還是Py3而浪費大量時間。

Py2和Py3裡面的思想基本是相通的,招式是類似的.當你熟悉Python到一定的程序的時候,會Py2的人學Py3隻需要很短的時間。

所以不要再糾結細枝末節的語法差異,而耽誤了寶貴的學習時間

㈡ 能裝兩個python環境嗎

一台電腦中可以安裝兩個python,只要命名不沖突,基本就沒有問題了,命令行可以隨機調用不同版本的python。
1、標准安裝:
去官網下載對應的python 安裝程序,通過安裝向導進行安裝,安裝的時候記得勾選把python 添加到系統環境變數中,以便於在命令行中調用,如果忘記添加,手動查找對應的python 安裝目錄,復制路徑並且添加到環境變數即可:
標准示例:
C:Python36

C:Python36Scripts

2、多個版本共存
通過1所示方法安裝對應版本的python,然後兩個.exe文件的名字改一下便於系統區分即可
如圖(我這里安裝了三個不同版本的python環境):
命令行調用:
python37
python36
python27

更多Python知識請關注Python視頻教程欄目。

㈢ 兩個python問題

#1.t.Usethefollowingfunctionheader:

#defeliminate_plicates(my_list):
#Write
#,
#,callsthefunction
#(eliminate_plicates)
#thefunction.
#:

defeliminate_plicates(my_list):
#Writethefunctioncodehere
rtLst=[]
foriteminmy_list:
ifitemnotinrtLst:
rtLst.append(item)
returnrtLst

defmain():
#Writethemainfunction
strNum=raw_input("")
strNumSplit=strNum.split('')
iNumSplit=[]
foriteminstrNumSplit:
iNumSplit.append(ord(item)-ord('0'))
printeliminate_plicates(iNumSplit)

#Callthemainfunction
main()
#2.Write
#
#iftheyareandFalsetheyarenot.Twowordsareanagramsifthey
#containthesameletters.Forexample,"silent"and"listen"are
#anagrams.Usethefollowingfunctionheader:

#jdefis_anagram(word1,word2):
#Writeamainfunction
#,callstheis_anagram
#.
defis_anagram(word1,word2):
#Writethefunctioncodehere
iflen(word1)!=len(word2):
returnFalse
lstFirst=[]
forcharinword1:
lstFirst.append(char)
lstSecond=[]
forcharinword2:
lstSecond.append(char)
foritem1inlstFirst:
iflstSecond.count(item1)!=1:
returnFalse
returnTrue

defmain():
#Writethemainfunction
strFirst=raw_input("TheFirst: ")
strSecond=raw_input("TheSecond: ")
printis_anagram(strFirst,strSecond)
#Callthemainfunction
main()

㈣ 兩個python pip怎麼安裝

官方解法
Python社區:我們在安裝Python3(>=3.3)時,Python的安裝包實際上在系統中安裝了一個啟動器py.exe,默認放置在文件夾C:\Windows\下面。這個啟動器允許我們指定使用Python2還是Python3來運行代碼。
py -2 test.py
py -3 test.py
去掉參數 '-2/-3'
在代碼文件最開始加入一行
#! python2
或者#! python3
分別表示該代碼文件使用Python2或者Python3解釋運行。那麼運行的時候命令行為
py test.py
使用pip
py -2 -m pip install XXXX
或者
py -3 -m pip install XXXX

㈤ Mac 上面兩個python共存問題

自己在Windows、linux均可以實現用兩個版本的python分別安裝pip,然後就可以通過pip-2.7,pip-3.3來區分,

㈥ python中兩個等號符號,怎麼用鍵盤打出來

Python中提供了各種各樣的運算符幫助我們解決各種實際問題。Python中的運算符主要包括算術運算符、比較運算符、位運算符、邏輯運算符和賦值運算符。下面將一一介紹這些運算符的具體種類和使用方法。

算術運算符

算術運算符幫助我們完成各種各樣的算術運算,如加減乘除等。Python中的算術運算符的種類如下表所示:

下面在Python中演示一個例子看看其具體輸出情況:

x = 7
y = 3
print(x+y)
print(x-y)
print(x*y)
print(x/y)
print(x**y)
print(x//y)
print(7.0/3)
print(7.0//3)
print(7//3.0)
print(7.0//3.0)

上面程序在Python自帶的IDLE中的運行情況如下圖所示:

比較運算符

比較運算符的作用是對變數或表達式的結果進行大小或真假的比較。其計算結果有兩種:True或False。

下表中給出了Python中所有的比較運算符的形式以及其含義。

表中的x、y、a和b的取值:x = 7, y = 8,a = 4, b = 7

在Python3.8.2Shell中運行上面的例子,其結果如下圖所示:

賦值運算符

Python中,變數無須定義,可以直接使用,即在使用時,可以直接把基本賦值運算符「=」右邊的值賦給左邊的變數,也可以進行某些運算後再賦值給左邊的變數。

Python中的賦值運算符有兩種形式:

(1)基本的賦值運算符,即單個「=」,其把右邊的值或運算結果賦給左邊的變數;

(2)復合的賦值運算符,即由算術運算符和「=」組合成的賦值運算符,其兼有運算和賦值的功能,如+=,相當於左邊的操作數加上右邊的操作數後,再賦值給左邊的操作數。

在Python中常用的賦值運算符如下表所示。

在Python IDLE中使用上面賦值運算符操作的例子如下圖所示:

上面的例子中要注意 c=-13,c //=3 這個結果,//相當於向下取整。

最後一個例子中x %= 3,由於前面運算完畢後,x的值為4.8,這里進行取模運算後,結果應該是1.8,但由於精度問題,顯示成了圖所示的結果。

邏輯運算符

Python有三種邏輯運算符:邏輯與,邏輯或和邏輯非。

一、基本用法

(1)and : 邏輯與

and運算需要兩個操作數,如果參與運算的兩個操作數都為True,則結果為True,否則運算結果為False。

b1 = True
b2 = True
b3 = False
b4 = False
print( b1 and b2)
print( b1 and b3)
print( b3 and b1)
print( b3 and b4)

其運行結果如下:

從運算結果可以總結出:如果and左側操作數為False,則結果為False,否則為右側操作數的值。

(2)or : 邏輯或

邏輯or運算也需要兩個操作數,如果參與or運算的兩個操作數有一個為True,則運算結果為True;兩個操作數都False時,則返回結果False.

b1 = True
b2 = True
b3 = False
b4 = False
print( b1 or b2)
print( b2 or b3)
print( b3 or b4)
print( b3 or b1)

其運算結果如下:

可以看出,如果or左側操作數的值為True,則結果為True,否則為右側操作數的結果。

(3)not : 邏輯非

not只需要一個操作數,它對原值取反,即操作數為True時,非運算完後為False;原操作數為False時,非運算完後True。

b1 = True
b2 = False
print( not b1)
print( not b2)

其運算結果如下:

在Python中,邏輯運算符可以運用到非邏輯類型的數據中。

二、用於非邏輯數據類型

Python中,非0的數值類型被視為True,0被視為False;非空字元串被視True,空字元串被視為False。

1、and:邏輯與

(1)數字參與的運算

b1 = 2
b2 = 3
b3 = 0
print(b1 and b2)
print(b1 and b3)
print(b3 and b1)

其運算結果如下:

可以簡單的概括為:如果and左側為0,則結果為0,否則返回右側操作數的值。

(2)字元串運算

s1 = "百家號"
s2 = "翔宇亭IT樂園"
s3 = ''
s4 = ''
print( s1 and s2)
print( s1 and s3)
print( s3 and s2)
print( s3 and s4)

其運算結果如下:

從運算結果可以簡單總結:左操作數如果為空字元串,則返回空,否則為右側操作數的值。

2、or:邏輯或

(1)數字參與的運算

b1 = 2
b2 = 3
b3 = 0
b4 = 0
print( b1 or b2)
print( b2 or b1)
print( b2 or b3)
print( b3 or b2)
print( b3 or b4)

其在Python3.8.2中的運算結果如下:

從上面的運算結果可以總結:如果or左側的操作數是非0值,則返回左側的數值,否則返回右側操作數的值。

(2)字元串參與的運算

s1 = "翔宇亭IT樂園"
s2 = "biye5ucom"
s3 = ''
s4 = ''
print( s1 or s2)
print( s2 or s1)
print( s1 or s3)
print( s3 or s2)
print( s3 or s4)

其在Python3.8.2中的運算結果如下:

從上面結果可以總結:如果or左側操作數為非空字元串,則返回左操作數的值,否則返回右側操作數的值。

3、not:邏輯非

(1)有數字參與的運算

從上面可以看出:非0值取反後結果為False,0值取反後結果為True。

(2)有字元串參與的運算

從上面的運算結果來看:非空字元串取反後結果為False,空字元串取反後結果為True。

位運算符

位運算符也稱二進制運算符,並且這些運算符只用於對整型數進行運算。

進行位運算時,整型數被轉換為二進制形式,然後位運算符對每位執行有關運算後,將結果再轉換回十進制形式,並返回給用戶。

Python中共有6種位運算符:

(1)&:按位與運算

對應位上的二進制數進行與運算,如果參加位運算的兩個二進制數為1,則結果為1,只要有一個為0,則結果為0,如10和4進行按位與運算,他們對應的二進制形式分別為:1010 和 100,則:

1 0 1 0
& 0 1 0 0
-----------
0 0 0 0

即10和4按位與運算的結果為二進制的0,也對應著10進制的0,最終結果即為0,即 10 & 4 = 0

再如,5和6進行按位與運算,其對應的二進制形式分別為: 101 和 110,

0 1 0 1
& 0 1 1 0
-------------
0 1 0 0

其運算結果為二進制的100,即十進制的4,也就是說: 5 & 6 = 4

在Python中的運行結果如下:

(2)按位或運算

按位或運算是二進制對應的每位進行或運算。如果對應的兩位都為0,則結果為0,只要有一個為1,則結果為1。

10 和 4的或運算:

1 0 1 0
| 0 1 0 0
------------
1 1 1 0

其或運算的結果為二進制的 1110,對應著十進制的 14,即 10 | 4 = 14.

5 和 6的或運算:

0 1 0 1
| 0 1 1 0
------------
0 1 1 1

5 和 6的按位或運算結果為 0111,對應的十進制為 7 ,即 5 | 6 = 7.

在Python中的運行結果:

(3)按位異或運算

按位異或運算,即對應的兩個二進制位不同時,結果為1,否則為0.

10 和 4 的按位異或運算:

1 0 1 0
^ 0 1 0 0
------------
1 1 1 0

即,結果為二進制1110,對應的十進制為14,亦即: 10 ^ 4 = 14

5 和 6 的按位異或運算:

0 1 0 1
^0 1 1 0
------------
0 0 1 1

0011對應的十進制數為3,也就是說: 5 ^ 6 = 3

在Python中的運行結果:

(4)按位取反運算符

該運算是單操作數運算符,即其只需要一個操作數參與運算。運算時,二進制數上的每位取反,即1變為0, 0變為1.

這里涉及到數字在計算機中的存儲形式,在計算機中,最高位為符號位,符號位為0時表示正數,符號位為1時表示負數。

數字在計算機中是以補碼的形式進行存儲的,整數的補碼與原碼相同,負數的補碼是在原碼的基礎上除符號位外,按位取反後,再加1.

如 +1,原碼為0 0001,補碼為 0 0001.

-1 ,原碼為1 0001,補碼為:1 1111。

再如:+2 ,原碼為: 0 0010,補碼為:0 0010.

-2,原碼為:1 0010,補碼為:1 1110

10按位取反運算(第1位為符號位):

~ 0 1 0 1 0
--------------
1 0 1 0 1

結果最高位為1,為負數,因為負數在計算機中以補碼形式存儲,轉換為原碼(先減1,再按位反)為:

1 1011

即對應的十進制數為 -11,即: ~10 = -11.

5 按位取反運算:

~ 0 0 1 0 1
---------------
1 1 0 1 0

結果對應的原碼為: 1 0110,對應的十進制數為:-6

在Python中的運行結果:

(5)<<:按位左移運算符

其形式為:m<<n

按位左移運算,m對應的二進制數的每位向左移動n位,後面補0.

如10的二進制數 1010 向左移動兩位後為:10 1000,其對應的十進制數為:40.

5的二進制數:0101,向左移動兩位後為:1 0100,其對應的十進制數為:20

也就是說,一個整數左移n位相當於這個數 m×2n

在Python中的運算結果:

(6)>>:按位右移運算符

其形式為:m >> n

即m對應的二進制數每位向右移動n位,移出的二進制數字去掉,最左邊空出的變為0.

10的二進制 1010 向右移動1位為:0101,即變為十進制的5;再移動1位變為0010,變為2,再移動1位變為0001,變為1,再移動就一直為0了。

即每向右移動1位,相當於原數除以2,只保留整數部分;移動n位,相當於原數除以2n,只保留整數部分。

在Python中的運算結果:

以上詳細講解了Python中各種運算符的使用方法,如果你對Python、R等感興趣,歡迎關注我,本號將持續更新相關內容的文章。

㈦ 在同一台計算機上能存在2個python嗎

可以同時安裝兩個版本的 Python,但是既然你安裝了 anaconda,它提供了一個更好的方案可以直接讓幾個 Python版本共存的,不需要安裝多個 anaconda,詳細操作請參考Anaconda如何配置多版本Python

㈧ 如何同時運行兩個python程序

打開兩個dos窗口,在窗口一執行:python yourprograme1.py 在窗口二執行:python yourprograme2.py

㈨ 兩個python作業

2題,輸出四位數

fromfunctoolsimportrece

a=7501
#提取每個數字
a_list=[iforiinstr(a)]
print(','.join(a_list))
#求和
sum=rece(lambdax,y:int(x)+int(y),a_list)
print('每個數字的和為:{}'.format(sum))

3題,閏年問題

list=[]
print('閏年年份有:',end='')
foriinrange(2019,2120):
ifi%4is0:
ifi%100is0:
ifi%400is0:
list.append(i)
print(i,end=',')
else:
list.append(i)
print(i,end=',')

print(' 2019-2119之間有{}個閏年'.format(len(list)))

㈩ 如何讓電腦優雅得處理兩個python版本

方法/步驟
首先當然是安裝你需要的兩個不同版本的python,這里我安裝的是2.7和3.3的,兩個版本安裝順序無所謂。
接下來就是檢查環境變數,缺少的我們需要添加。先找到環境變數的位置。在Path環境變數中檢查以下4個變數(Path中的環境變數是以分號隔開的):
1.c:\Python27
2.c:\Python27\Scripts
3.c:\Python33
4.c:\Python33\Scripts
少哪個加哪個,注意分號隔開。
然後進入Python2.7安裝目錄找到如圖內容,把python.exe刪除。
然後進入python3.3安裝目錄。找到python.exe程序,把它重命名為python3.exe
最後打開命令行界面測試一下。執行python2命令會進入python2.7的交互環境,執行python3命令會進入python3.3交互環境。
剩下的問題就是pip的問題了。兩個python版本分別安裝了pip以後怎麼區分它們。進入python安裝路徑找到Scripts文件夾,進入裡面找到pip*-script.py,打開修改第一句為你要指定的那個python解釋器

熱點內容
wincc圖形編譯在哪裡 發布:2024-09-17 03:58:26 瀏覽:977
androidubuntu 發布:2024-09-17 03:50:27 瀏覽:701
識夢源碼 發布:2024-09-17 03:50:18 瀏覽:26
諾基亞密碼忘了打什麼電話 發布:2024-09-17 03:27:09 瀏覽:555
樹深度優先演算法 發布:2024-09-17 03:26:58 瀏覽:472
跳轉頁源碼 發布:2024-09-17 03:13:05 瀏覽:543
html文件上傳表單 發布:2024-09-17 03:08:02 瀏覽:785
聊天軟體編程 發布:2024-09-17 03:00:07 瀏覽:726
linuxoracle安裝路徑 發布:2024-09-17 01:57:29 瀏覽:688
兩個安卓手機照片怎麼同步 發布:2024-09-17 01:51:53 瀏覽:207