怒學Python——第二篇——類型與運算
Python支援5種資料類型,包括數字(numbers)、字串(string)、列表(list)、元組(tuple)和字典(dictionary)。作為一門動態類型語言,不用去宣告一個標示符的類型,使用的時候是什麼類型會自動判定。
對於定義好的變量,若不使用該變量,可以用del刪除來釋放佔有的資源,如
var = 10del var
Python的數字(numbers):支持int、long、float和complex,比較簡單不給範例。
Python的字串(string):如前面所說的可以被多種引號定義,支援[p](獲得p位置的字元)、[l:r](獲得從l開始到r截止的字串)、*t(獲得t個該字串連結在一起的字串)以及+s(取得與s連結後的字串)方法(methods,為什麼用方法呢,與ruby有關,所有物件的.methods可以顯示所有能執行的操作,所以我也開始把一個物件能夠執行的操作叫做方法),如下範例
s = 'This is a test case.'PRint s[0] #輸出s的第一個字元' T'print s[0:4] #輸出s的第一個到第四個字元組成的字串'This'print s*2 #輸出兩個s 連結的新字串 字串s + ' Good! ' #輸出s與' Good!'連結後的字串
Python的列表(list):用[]來定義,用起來像C++的容器vector,只不過這個容器可以裝不同類型的值,同時可以嵌套定義,一個列表裡麵包含另一個列表,方法與string的類似,如下給出例子
l = ['wyp', 1, 3.14, [2, 'cc']]print l #輸出整個整個lprint#輸出整個整個lprint l[0] #輸出l的第一個元素'wyp'print l[3][0] #輸出l的第四個元素的第一個元素2print l[0:3] #輸出l的第四個元素的第一個元素2print l[0:3] 輸出l的第四個元素的第一個元素2print l[0:3] 元素到第三個元素print l*2 #輸出兩個l連結在一起的清單print l+['.'] #輸出l與清單['.']連結在一起的清單
的元組tuple):用()來定義,方法與列表相似,唯一差別是不能二次賦值,所以不給例子。
Python的字典(dictionary):用{}來定義,定義方法像json,用起來像C++的容器map,方法在下給出示例
d = {1:'wyp', 'two':'is ', 3.0:'Coder'}
d['four'] = 'like'd[5] = 'farmer'print d #輸出整個字典dprint d[1] #輸出鍵為1的值'wyp'print d .keys() #輸出所有的鍵print d.values() #輸出所有的值
Python的型別轉換:目測用得不多,下面給例
int(x) #把x轉成intx型,直接取整,不管後面的尾數long(x) #把x轉成long型,直接取整,不管後面的尾數float(x) #把x轉成float型complex(x,y) #創建一個一個x為實部,y為虛部的複數chr(x) #轉成對應ascii碼x的字元ord(c) #轉成c對應的ascii碼unichr(x) 將字元改為) #把x轉成它的十六進位的字串oct(x) #把x轉成它的八進位的字串str(x) #把x轉換成字串eval(str # 將字串表達式str的值算出來tuple(s) #把序列型結構的s轉成元組list(s) #把序列型結構的s轉成列表dict(s) #將序列型結構且每個元素都是二元組的s轉成字典
-------------------------------------- -------------------------------------------------- -------------------------------------------------- -----
------------------------------------------- -------------------------------------------------- --------------------------------------------------
------------------------------------------------ -------------------------------------------------- ---------------------------------------------
Python的運算方法與C++非常相似,均分為算術運算、比較運算、邏輯運算和位元運算,在此基礎上加入了成員運算和身分運算,下面給出和C++有出入的範例
算術運算:多出來的運算子有**和//,因此多出了**=和//=給出範例
a ** b #即a^b,a的b次方a // b #先a/b然後再直接取整
比較運算:多出來的運算子是"",與"!="功能一樣,所以就不給範例
邏輯運算:這裡有點不同,邏輯運算全部用英文表示了,就是與(and)、或(or)和非(not),用法一樣就不給出示例了
位運算:與C++相同
成員運算:運算子為in和not in,以in為例如果一個元素在序列裡就是true,否則false,另外一個就是取反,下面給出範例
t = [1, 2, 3, 4] 1 in t #返回true1 not in t #返回false0 in t #返回false0 not in t #返回true
身份運算:運算符為is和notis,即判斷兩個單元,是否為同一個單元這裡發現一個python的小細節,它的0~256這些整數全部都是已經存放在內存中的,而其他的都是在定義的時候直接分配新內存,下面給出示例
a = -1b = -1a is b #值為false,這裡發現-1不是python預先存放在內存中的a += 1b += 1while (a is b): #在256之前都為true
a + 1 1 print str(a) + ', ' + str(b) + 'n'

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

PHP和Python各有優劣,選擇取決於項目需求和個人偏好。 1.PHP適合快速開發和維護大型Web應用。 2.Python在數據科學和機器學習領域佔據主導地位。

在CentOS系統上高效訓練PyTorch模型,需要分步驟進行,本文將提供詳細指南。一、環境準備:Python及依賴項安裝:CentOS系統通常預裝Python,但版本可能較舊。建議使用yum或dnf安裝Python3併升級pip:sudoyumupdatepython3(或sudodnfupdatepython3),pip3install--upgradepip。 CUDA與cuDNN(GPU加速):如果使用NVIDIAGPU,需安裝CUDATool

在CentOS系統上啟用PyTorchGPU加速,需要安裝CUDA、cuDNN以及PyTorch的GPU版本。以下步驟將引導您完成這一過程:CUDA和cuDNN安裝確定CUDA版本兼容性:使用nvidia-smi命令查看您的NVIDIA顯卡支持的CUDA版本。例如,您的MX450顯卡可能支持CUDA11.1或更高版本。下載並安裝CUDAToolkit:訪問NVIDIACUDAToolkit官網,根據您顯卡支持的最高CUDA版本下載並安裝相應的版本。安裝cuDNN庫:前

Docker利用Linux內核特性,提供高效、隔離的應用運行環境。其工作原理如下:1. 鏡像作為只讀模板,包含運行應用所需的一切;2. 聯合文件系統(UnionFS)層疊多個文件系統,只存儲差異部分,節省空間並加快速度;3. 守護進程管理鏡像和容器,客戶端用於交互;4. Namespaces和cgroups實現容器隔離和資源限制;5. 多種網絡模式支持容器互聯。理解這些核心概念,才能更好地利用Docker。

Python和JavaScript在社區、庫和資源方面的對比各有優劣。 1)Python社區友好,適合初學者,但前端開發資源不如JavaScript豐富。 2)Python在數據科學和機器學習庫方面強大,JavaScript則在前端開發庫和框架上更勝一籌。 3)兩者的學習資源都豐富,但Python適合從官方文檔開始,JavaScript則以MDNWebDocs為佳。選擇應基於項目需求和個人興趣。

在CentOS下選擇PyTorch版本時,需要考慮以下幾個關鍵因素:1.CUDA版本兼容性GPU支持:如果你有NVIDIAGPU並且希望利用GPU加速,需要選擇支持相應CUDA版本的PyTorch。可以通過運行nvidia-smi命令查看你的顯卡支持的CUDA版本。 CPU版本:如果沒有GPU或不想使用GPU,可以選擇CPU版本的PyTorch。 2.Python版本PyTorch

MinIO對象存儲:CentOS系統下的高性能部署MinIO是一款基於Go語言開發的高性能、分佈式對象存儲系統,與AmazonS3兼容。它支持多種客戶端語言,包括Java、Python、JavaScript和Go。本文將簡要介紹MinIO在CentOS系統上的安裝和兼容性。 CentOS版本兼容性MinIO已在多個CentOS版本上得到驗證,包括但不限於:CentOS7.9:提供完整的安裝指南,涵蓋集群配置、環境準備、配置文件設置、磁盤分區以及MinI

在CentOS系統上進行PyTorch分佈式訓練,需要按照以下步驟操作:PyTorch安裝:前提是CentOS系統已安裝Python和pip。根據您的CUDA版本,從PyTorch官網獲取合適的安裝命令。對於僅需CPU的訓練,可以使用以下命令:pipinstalltorchtorchvisiontorchaudio如需GPU支持,請確保已安裝對應版本的CUDA和cuDNN,並使用相應的PyTorch版本進行安裝。分佈式環境配置:分佈式訓練通常需要多台機器或單機多GPU。所
