列舉python的5個數據類型_python公開課|新公布的5個python核心數據類型,這些細節你難道還不不知道嗎...

【摘要】在這個科學技術高速發展的時代,越來越多的人都開始選擇學習編程軟件,那么首先被大家選擇的編程軟件就是python,也用在各行各業之中,并被大家所熟知,所以也有越來越多的python學習者關注python就業方向問題,今天環球網校的小編就來和大家講講python核心數據類型。

python核心數據類型包括數字、字符串、元組、列表、字典、文件、集合

字符串、元組是不可變的,列表、字典是可變的

1、python核心數據類型——字符串

字符串是用來記錄文本信息的,可以把字符串看作是單個字符組成的序列,其他類型的序列還包括列表和元組。

S = 'python'

print(len(S)) # 6

print(S[0]) # p

print(S[:])# python

print(S[1:])# ython

print(S[:-1])# pytho

print(S[1:3])# yt

字符串作為序列也支持加號合并操作

S = 'python'

print(S + 'is very easy') # python is very easy

print(S * 2) # pythonpython

字符串的find方法是對子字符串進行查找,存在的情況下將返回子字符串的索引,不存在的情況下將返回-1,而replace方法將會對全局進行搜索和替換

>>> s = 'abc'

>>> print(s.find('b'))

1

>>> print(s.find('d'))

-1

>>> print(s.replace('ab','de'))

dec

>>>

>>> print(s.upper())

ABC

>>> print(s.isalpha())

True

>>>

字符串大小寫轉換,upper()方法轉大寫,lower方法轉小寫,capitalize()方法把首字母轉大寫,

title()方法把每個單詞的第一個字母大小,其余小寫

s = 'aBc'

>>> print(s.upper())

ABC

>>> print(s.lower())

abc

>>>

>>> s = 'www.baidu.com'

>>> print(s.capitalize())

>>> print(s.title())

>>>

字符串支持格式化的高級替代操作,可以以一個表達式的形式和一個字符串方法調用形式使用

>>> print('%s like eat %s' % ('I','egg!'))

I like eat egg!

>>> print('{0} like eat {1}'.format('I','egg!'))

I like eat egg!

>>>

2、python核心數據類型——列表

列表是一個任意類型的對象的位置相關的有序集合。前面講到字符串、列表都是序列的一種,兩者唯一的區別是字符串不可變,而列表大小是可變的,所以能同樣對列表進行索引、切片

>>> L = [123,'PYTHON',1.23]

>>> print(L[0])

123

>>> print(L[2])

1.23

>>> print(L[:-1])

[123, 'PYTHON']

>>> print(L[:])

[123, 'PYTHON', 1.23]

>>> print(L[1:3])

['PYTHON', 1.23]

>>>

列表也可以使用append()方法添加元素,使用pop()方法刪除元素,pop()方法不帶參數時默認刪除最后一個元素,帶參數時刪除指定索引的元素

>>> L = [123,'PYTHON',1.23]

>>> L.append('java')

>>> print(L)

[123, 'PYTHON', 1.23, 'java']

>>> L.pop(1)

PYTHON'

>>> print(L)

[123, 1.23, 'java']

>>>

列表雖然沒有固定大小,但不允許引用不存在的元素,超出列表末尾之外的引用會導致錯誤

>>> L = [123,'PYTHON',1.23]

>>> L[11]

Traceback (most recent call last):

File "", line 1, in

IndexError: list index out of range

>>>

3、python核心數據類型——嵌套

python核心數據類型的一個優秀的特性是它可以支持任意的嵌套,例如:一個列表包含一個字典,并在這個字典中包含另一個列表;python中的多維數組,一個嵌套列表的列表可以完成基本操作

>>> M = [[1,2,3],[4,5,6],[7,8,9]]

>>> print(M[1])

[4, 5, 6]

>>> print(M[1][2])

6

>>>

4、python核心數據類型——列表解析

列表解析能夠處理矩陣這樣結構的強大工具,矩陣是按照行進行存儲的,所以通過簡單的索引即可獲取行,使用列表解析可以獲取列,下面例子是獲取第三列

>>> M = [[1,2,3],[4,5,6],[7,8,9]]

>>> colum2 = [row[2] for row in M]

>>> print(colum2)

[3, 6, 9]

>>>

列表解析源自集合的概念,它是一種通過對序列中的每一項運行一個表達式來創建一個新列表的方法,

>>> M = [[1,2,3],[4,5,6],[7,8,9]]

>>> c = [row[2] + 1 for row in M]

>>> print(c)

[4, 7, 10]

>>> c = [row[2] for row in M if row[2] % 2 ==0] #取第二列中為偶數的元素

>>> print(c)

[6]

>>>

>>> diag = [M[i][i] for i in [0,1,2]] #取對角線元素

>>> print(diag)

[1, 5, 9]

>>>

括號中的解析語法也可以用來創建產生所需結果的生成器

>>> M = [[1,2,3],[4,5,6],[7,8,9]]

>>> G = (sum(row) for row in M)

>>> print(next(G))

6

>>> print(next(G))

15

>>> print(next(G))

24

>>>

內置函數map也可以做類似的事情,產生對各項運行一個函數的結果,在python3中,將其包裝到列表中,會使其返回所有值

>>> M = [[1,2,3],[4,5,6],[7,8,9]]

>>> print(list(map(sum,M)))

[6, 15, 24]

>>>

在python3中,解析語法也可以用來創建集合和字典

>>> M = [[1,2,3],[4,5,6],[7,8,9]]

>>> G = {sum(row) for row in M}

>>> print(G)

{24, 6, 15}

>>> F = {i : sum(M[i]) for i in range(3)}

>>> print(F)

{0: 6, 1: 15, 2: 24}

>>>

5、python核心數據類型——字典

字典通俗的理解就是key-value 關系,通過key值找對應的value,內置的sorted函數可以對字典的key排序,

>>> dic = {'a':2,'c':1,'b':3}

>>> for key in sorted(dic):

...

... print(key,'=>',dic[key])

...

a => 2

b => 3

c => 1

>>>

獲取不存在的鍵會出現錯誤,但可以通過if進行測試判斷

>>> dic = {'a':2,'c':1,'b':3}

>>> print(dic['d'])

Traceback (most recent call last):

File "", line 1, in

KeyError: 'd'

>>>

>>> dic = {'a':2,'c':1,'b':3}

>>> if 'd' not in dic:

... print("missing")

...

missing

{'a': 2, 'c': 1, 'b': 3}

>>> value = dic['d'] if 'd' in dic else 0

>>> print(value)

0

>>>

>>> value = dic['b'] if 'b' in dic else 0

>>> print(value)

3

>>>

sort 與sorted區別 sort會改變原來的,而sorted不會改變原來的,相當于新建了一個

>>> list = [0,3,5,-1,4,6]

>>> list.sort()

>>> print(list)

[-1, 0, 3, 4, 5, 6]

>>> list = [0,3,5,-1,4,6]

>>> sorted(list)

[-1, 0, 3, 4, 5, 6]

>>> print(list)

[0, 3, 5, -1, 4, 6]

基于key值的排序

>>> list = [(2,'bob',88),(4,'mary',99),(1,'make',77)]

>>> list.sort()

>>> print(list)

[(1, 'make', 77), (2, 'bob', 88), (4, 'mary', 99)]

>>> list = [(2,'bob',88),(4,'mary',99),(1,'make',77)]

>>> list.sort(key = lambda x:x[2])

>>> print(list)

[(1, 'make', 77), (2, 'bob', 88), (4, 'mary', 99)]

reverse=False為升序排序;reverse=True為降序排序

>>> list = [0,3,5,-1,4,6]

>>> list.sort(reverse=False)

>>> print(list)

[-1, 0, 3, 4, 5, 6]

>>> list.sort(reverse=True)

>>> print(list)

[6, 5, 4, 3, 0, -1]

>>>

以上就是有關于python核心數據類型的全部內容,小編希望大家所學的python知識可以用在自己的工作領域中,畢竟作為一個應用類的技能,最終還是要應用在實際領域中才能發揮它的作用,環球網校的小編在這里祝大家學有所成,并徹底掌握python的使用方法。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277553.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277553.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277553.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

selenium3 + python - page_source頁面源碼

前言: 有時候通過元素的屬性的查找頁面上的某個元素,可能不太好找,這時候可以從源碼中爬出想要的信息。selenium的page_source方法可以獲取到頁面源碼。 本次以博客園為例,先爬取頁面源碼,通過re正則表達式爬取出url&a…

簡單分析Guava中RateLimiter中的令牌桶算法的實現

為什么80%的碼農都做不了架構師?>>> 令牌桶算法是網絡流量整形(Traffic Shaping)和速率限制(Rate Limiting)中最常使用的一種算法。典型情況下,令牌桶算法用來控制發送到網絡上的數據的數目&am…

gcc oracle mysql_Linux下C語言訪問Oracle數據庫Demo

前提條件1. Linux環境已經存在,安裝好了Oracle本demo 運行環境本地環境 RedHat LINUX AS 4 ,ORACLE 10G本地數據庫sid orcl,ip:127.0.0.1,用戶名:kingbi,密碼:kingbi,表dsd_test. 顯示表dsd_test 的所有記錄.步驟:(1) 創建表 …

煉數成金數據分析課程---16、機器學習中的分類算法(交叉內容,后面要重點看)...

煉數成金數據分析課程---16、機器學習中的分類算法(交叉內容,后面要重點看) 一、總結 一句話總結: 大綱實例快速學習法 主要講解常用分類算法(如Knn、決策樹、貝葉斯分類器等)的原理及python代碼實現 1、什么是分類? 分…

NFS配置詳解

1、NFS服務介紹1.1 什么是NFS?NFS是Network File System的縮寫。中文意思是網絡文件系統。它的主要功能是通過網絡(一般是局域網)讓不同的主機系統之間可以共享文件或者目錄。NFS客戶端(一般為應用服務器,例如web&…

idea用法

更新gradle的依賴后,刷新項目引入jar包的方法: view--Tool Buttons 在右側 Gradle 點刷新 轉載于:https://www.cnblogs.com/z360519549/p/10994897.html

linux備份mysql需要暫停服務嗎_【MySQL運維】線上MySQL數據庫停服遷移流程

一、數據備份與恢復階段,選在凌晨1點進行操作,暫停服務進行備份(允許停服2個小時)1、首先停止Nginx服務,并且修改數據庫用戶密碼,防止還有新的連接進來2、殺掉某個用戶所有進程for i in mysql -udba -pPASSWORD -ssse "show …

免費下載!5本阿里技術好書,帶你看更大的世界

共享、開源是互聯網技術發展的重要精神。在過去,25000多萬名阿里工程師,撰寫了一系列精品技術叢書,從算法、研發到職業人生隨筆,應有盡有。目前該系列叢書已全部開放下載,供技術人免費閱讀。 今天小編整理了其中的五本…

python3安裝mysqlclient_Python3 安裝mysqlclient錯誤處理(MAC版)

在使用django的時候需要安裝mysqlclient庫,很多時候會出現以下報錯:running installrunning bdist_eggrunning egg_infowriting mysqlclient.egg-info/PKG-INFOwriting dependency_links to mysqlclient.egg-info/dependency_links.txtwriting top-level names to mysqlclient.…

React綁定事件處理函數this的幾種方法

在以類繼承的方式定義的組件中,為了能方便地調用當前組件的其他成員方法或屬性(如:this.state),通常需要將事件處理函數運行時的 this 指向當前組件實例。 綁定事件處理函數this的幾種方法: 第一種方法&…

烏班圖系統16.04安裝

本例jiyu基于Ubuntu16.04 64位版本為例進行安裝,安裝的方式有多種,本文使用光盤進行安裝安裝前應準備好,將Ubuntu的鏡像文件刻成光盤,然后將光盤放入光驅,并設置服務器從光盤啟動,開機到如下界面:按Enter鍵到下一步,如…

python做游戲用什么軟件_用Python自制谷歌小游戲

谷歌流量器中有個很有名的彩蛋:當你網絡出現問題時,就會出現一個“小恐龍游戲”。(如果想要直接進行游戲,可以在地址欄輸入:chrome://dino)今天我們就來給大家演示下,用Python來自己做一個仿制的“小恐龍游戲”&#x…

使用maven構建項目候,jar包錯誤的解決辦法

1、刪除架包,重新下載,右鍵項目點擊"run as"中的“maven clean”,然后再maven中找到Update Project 2、可以在代碼中,把鼠標放到報錯的架包上 點擊劃紅線部分,進行安裝 轉載于:https://www.cnblogs.com/qingqian/p/1099…

MySQL——通過EXPLAIN分析SQL的執行計劃

在MySQL中,我們可以通過EXPLAIN命令獲取MySQL如何執行SELECT語句的信息,包括在SELECT語句執行過程中表如何連接和連接的順序。下面分別對EXPLAIN命令結果的每一列進行說明:select_type:表示SELECT的類型,常見的取值有:…

python將argv作為參數_在jupyter / ipython notebook中將命令行參數傳遞給argv

經過大量的環顧后,我發現了非常繁瑣的自定義庫,但是用幾行代碼解決了它,我認為這些代碼很漂亮.我使用nbconvert最終得到一個html報告作為輸出,包含筆記本中的所有圖形和降價,但是通過最小的python包裝器接受命令行參數:python文件test_args.py(正常執行命令行參數)&…

模擬輸入(ADC-A0)

ESP8266具有內置的10位ADC,只有一個ADC通道(A0引腳),即只有一個ADC輸入引腳可讀取來自外部器件的模擬電壓 ESP8266上的ADC通道和芯片供電電壓復用,也就是說我們可以將其設置為測量系統電壓或者外部電壓 測量外部電壓: analogRead(…

SQL Server 連接超時案例一則

原文:SQL Server 連接超時案例一則上周六,一工廠系統管理員反饋一數據庫連接不上,SSMS連接數據庫報“連接超時時間已到。在嘗試使用預登錄握手確認時超過了此超時時間.......”, 如下截圖所示: 另外遠程連接也連接不上,系統管理員…

mysql 刪除5天前 備份_mysql自動備份刪除5天前的備份

1、查看磁盤空間情況:df -h2、創建備份目錄:上面我們使用命令看出/home下空間比較充足,所以可以考慮在/home保存備份文件;cd /homemkdir backupcd backup3、創建備份Shell腳本:注意把以下命令中的DatabaseName換為實際的數據庫名稱…

個人作業-Alpha項目測試

這個作業屬于哪個課程https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2作業地址https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/3340團隊名稱腦闊疼https://www.cnblogs.com/chaserFF/p/10994338.html這個作業的目標完成班級項目互評…

深入理解brew link命令

來源:https://newsn.net/say/brew-link-php71.html brew是mac機上面程序猿非常常用的軟件包安裝方式,其中有兩組命令是需要大家知曉的。分別是:第一組:brew install和brew uninstall。第二組,brew link和brew unlink。…