日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

4.Lists

發(fā)布時(shí)間:2023/12/10 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 4.Lists 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Lists

Python中的列表表示有序的值。 可以使用方括號(hào)來(lái)定義,變量值之間用逗號(hào)隔開(kāi)。 例如,這是幾個(gè)素?cái)?shù)的列表:

[1]

primes = [2, 3, 5, 7]

我們可以將其他類型的東西放在列表中:

[2]

planets = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']

還可以包含列表:

[3]

hands = [['J', 'Q', 'K'],['2', '2', '2'],['6', 'A', 'K'], # (Comma after the last element is optional) ] # (I could also have written this on one line, but it can get hard to read) hands = [['J', 'Q', 'K'], ['2', '2', '2'], ['6', 'A', 'K']]

列表還可以包含不同的數(shù)據(jù)類型:

[4]

my_favourite_things = [32, 'raindrops on roses', help] # (Yes, Python's help function is *definitely* one of my favourite things)

Indexing

我們可以通過(guò)索引訪問(wèn)各個(gè)列表元素。
哪個(gè)星球最接近太陽(yáng)? Python的索引從零開(kāi)始,因此第一個(gè)元素的索引為0。

[5]

planets[0]'Mercury'

下一個(gè)最近的星球是?

[6]

planets[1]'Venus'

哪個(gè)是離太陽(yáng)最遠(yuǎn)的星球?

列表末尾的元素可以使用負(fù)數(shù)訪問(wèn),從-1開(kāi)始:

[7]

planets[-1]'Neptune'

[8]

planets[-2]'Uranus'

Slicing

前三個(gè)星球是哪些?我們他可以通過(guò)切片來(lái)回答:

[9]

planets[0:3] ['Mercury', 'Venus', 'Earth']

planets[0:3]是我們向Python訪問(wèn)列表從索引0到索引2(不包含3)星球的方式。

起始和結(jié)束索引值是可選的。 如果我省略了起始索引,則假設(shè)為0.所以我可以將上面的表達(dá)式重寫(xiě)為:

[10]

planets[:3]['Mercury', 'Venus', 'Earth']

如果你省略結(jié)束索引值,Python認(rèn)為是訪問(wèn)整個(gè)列表的長(zhǎng)度。

[11]

planets[3:]['Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']

上面表達(dá)式含義是:給我從索引3開(kāi)始的所有星球。

我們也可以用負(fù)數(shù)索引來(lái)切片

[12]

# All the planets except the first and last planets[1:-1]['Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus']

[13]

# The last 3 planets planets[-3:]['Saturn', 'Uranus', 'Neptune']

Mutating lists

列表是可變的,意思是她們可以按位置修改。

修改列表的一種方法是賦值索引或切片表達(dá)式。
例如,假設(shè)我們要重命名Mars:

[14]

planets[3] = 'Malacandra' planets ['Mercury','Venus','Earth','Malacandra','Jupiter','Saturn','Uranus','Neptune']

讓我們通過(guò)縮短前3個(gè)行星的名稱來(lái)彌補(bǔ)。

[15]

planets[:3] = ['Mur', 'Vee', 'Ur'] print(planets) # (Okay, that was rather silly. Let's give them back their old names) planets[:4] = ['Mercury', 'Venus', 'Earth', 'Mars',]['Mur', 'Vee', 'Ur', 'Malacandra', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']

List functions

Python含有一些內(nèi)置的處理列表的函數(shù)。

len()函數(shù)可求列表的長(zhǎng)度

[16]

# How many planets are there? len(planets)8

sorted()函數(shù)可以對(duì)列表進(jìn)行排序:

[17]

# The planets sorted in alphabetical order sorted(planets)['Earth', 'Jupiter', 'Mars', 'Mercury', 'Neptune', 'Saturn', 'Uranus', 'Venus']

sum()函數(shù)可以對(duì)列表進(jìn)行求和

[18]

primes = [2, 3, 5, 7] sum(primes)17

我們之前已經(jīng)使用過(guò)min和max求出最小值和最大值,我們也可以傳遞單個(gè)列表參數(shù)。

[19]

max(primes)7

Interlude: objects

到目前為止,我一直還未介紹“對(duì)象”一詞,?你甚至可能還記得我聲稱Python中的所有內(nèi)容都是一個(gè)對(duì)象。 但這究竟意味著什么呢?
簡(jiǎn)而言之,對(duì)象帶有一些東西。 我們可以使用Python的語(yǔ)法訪問(wèn)這些東西(點(diǎn)語(yǔ)法)。
例如,Python中的數(shù)字帶有一個(gè)名為imag的關(guān)聯(lián)變量,代表它們的虛部。 (你可能永遠(yuǎn)不需要使用它,除非你做了一些非常奇怪的數(shù)學(xué)運(yùn)算。)

[20]

x = 12 # x is a real number, so its imaginary part is 0. print(x.imag) # Here's how to make a complex number, in case you've ever been curious: c = 12 + 3j print(c.imag)0 3.0

對(duì)象攜帶的東西也可以包括函數(shù)。 附加到對(duì)象的函數(shù)稱為方法。 (附加到對(duì)象的非函數(shù)事物,如imag,稱為屬性)。
例如,數(shù)字有一個(gè)名為bit_length的方法。 我們?cè)俅问褂命c(diǎn)語(yǔ)法訪問(wèn)它:

[21]

x.bit_length<function int.bit_length>

正確調(diào)用我們可以添加參數(shù):

[22]

x.bit_length()4

像我們可以傳遞函數(shù)到hel()函數(shù)中,我們也可以傳遞方法:

[23]

help(x.bit_length)Help on built-in function bit_length:bit_length(...) method of builtins.int instanceint.bit_length() -> intNumber of bits necessary to represent self in binary.>>> bin(37)'0b100101'>>> (37).bit_length()6

上面的例子非常模糊。 到目前為止,我們所看到的任何類型的對(duì)象(數(shù)字,函數(shù),布爾值)都沒(méi)有您可能會(huì)使用的屬性或方法。
但事實(shí)證明,列表有幾種方法可供您隨時(shí)使用。

List methods

list.append可以修改列表,通過(guò)在末尾添加一個(gè)元素

[24]

# Pluto is a planet darn it! planets.append('Pluto')

為什么上面的單元格沒(méi)有輸出? 讓我們通過(guò)調(diào)用help(planets.append)來(lái)檢查文檔。

注:append是一個(gè)由列表類型的所有對(duì)象自帶的方法,所以我們也可以調(diào)用help(list.append)。 但是,如果我們嘗試調(diào)用help(append),Python會(huì)抱怨沒(méi)有名為“append”的變量。 “append”名稱僅存在于列表中 - 它不作為內(nèi)置函數(shù)(如max或len)的獨(dú)立名稱存在。

[25]

help(planets.append)Help on built-in function append:append(...) method of builtins.list instanceL.append(object) -> None -- append object to end

- >None 告訴我們list.append不返回任何內(nèi)容。 但是如果我們檢查行星的值,我們可以看到方法調(diào)用修改了行星的值:

[26]

planets['Mercury','Venus','Earth','Mars','Jupiter','Saturn','Uranus','Neptune','Pluto']

list.pop移除并返回列表最后一個(gè)元素的值:

[27]

planets.pop()'Pluto'

[28]

planets['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']

Searching lists

Earth在列表中的位置在哪里?我們可以使用list.index方法得到它的索引。

[29]

planets.index('Earth')2

它排在第三位(列表索引從0開(kāi)始)。

Pluto在哪里呢?

[30]

planets.index('Pluto')--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-30-8e9d439d9276> in <module>() ----> 1 planets.index('Pluto')ValueError: 'Pluto' is not in list

哦,那是對(duì)的......
為了避免這樣的令人不快的意外,我們可以使用in運(yùn)算符來(lái)確定列表是否包含特定值:

[31]

# Is Earth a planet? "Earth" in planetsTrue

[32]

# Is Calbefraques a planet? "Calbefraques" in planetsFalse

我們還沒(méi)有涉及一些更有趣的列表方法。 如果您想了解附加到特定對(duì)象的所有方法和屬性,我們可以在對(duì)象本身上調(diào)用help()。 例如,help(planets)將告訴我們所有列表方法:

[33]

help(planets)

列表有很多方法,有著奇怪的名字,比如__eq__和__iadd__。 現(xiàn)在不要太擔(dān)心這些。 (你可能永遠(yuǎn)不會(huì)直接調(diào)用這些方法。但是當(dāng)我們使用像索引或比較運(yùn)算符這樣的語(yǔ)法時(shí),它們會(huì)在幕后被調(diào)用。)最有趣的方法是在列表的底部(append,clear,copy等)。

Tuples

元組幾乎與列表完全相同。 它們只有兩種不同。
1:創(chuàng)建它們使用括號(hào)(可選)而不是方括號(hào)

[34]

t = (1, 2, 3)

[35]

t = 1, 2, 3 # equivalent to above t(1, 2, 3)

2:元組不能修改

[36]

[0] = 100--------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-36-155b9e8fb284> in <module>() ----> 1 t[0] = 100TypeError: 'tuple' object does not support item assignment

元組通常用于具有多個(gè)返回值的函數(shù)。
例如,float對(duì)象的as_integer_ratio()方法以元組的形式返回分子和分母:

[37]

x = 0.125 x.as_integer_ratio()(1, 8)

這些多個(gè)返回值可以單獨(dú)分配,如下所示:

[38]

numerator, denominator = x.as_integer_ratio() print(numerator / denominator)0.125

最后,我們對(duì)用于交換兩個(gè)變量的經(jīng)典Stupid Python Trick?有了一些了解!

[39]

a = 1 b = 0 a, b = b, a print(a, b)0 1

跳轉(zhuǎn)到練習(xí)筆記本,以得到一些關(guān)于列表和元祖的練習(xí)。

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

總結(jié)

以上是生活随笔為你收集整理的4.Lists的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 中文字幕黄色 | 午夜剧场福利社 | 黄色片a| 自拍偷在线精品自拍偷无码专区 | 久久丁香网 | 欧美人妖乱大交 | 老汉av| 艳妇乳肉豪妇荡乳av无码福利 | 久久亚洲综合国产精品99麻豆精品福利 | 久久国产一区二区 | 一起操在线 | 成人久久精品人妻一区二区三区 | 国产成人av免费看 | 九九黄色 | 亚洲人精品午夜射精日韩 | 中文字幕二区三区 | 自拍偷拍欧美激情 | 黄片毛片在线观看 | 精品久久久国产 | 黄网在线播放 | 91操碰| a级片免费观看 | 丰满岳跪趴高撅肥臀尤物在线观看 | 健身教练巨大粗爽gay视频 | 久久亚洲第一 | 操碰在线视频 | 色综合av | 亚洲午夜伦理 | 97国产一区| 日韩大片免费在线观看 | 日韩欧美一区在线 | 日本免费黄色大片 | 91爱在线观看 | 97精品人妻一区二区 | 插我舔内射18免费视频 | 欧美一级在线视频 | 亚洲一区二区人妻 | 韩国一级一片高清免费观看 | 青草精品视频 | 西野翔之公侵犯中文字幕 | 亚洲成人第一页 | 少妇高潮迭起 | 日韩久久免费视频 | 久草成人在线视频 | 欧美激情视频一区二区 | 嫩草av在线 | 女人做爰全过程免费观看美女 | 亚洲色欧美另类 | 成人亚洲一区二区 | 中文字幕亚洲区 | 深夜视频在线 | 欧美一区二区三区小说 | 日韩乱码人妻无码系列中文字幕 | 91福利在线导航 | 久久人| 日韩高清专区 | 新红楼梦2005锦江版高清在线观看 | 成人激情四射网 | 国产亚洲黄色片 | 色爱亚洲 | 欧美激情视频二区 | 国产三级日本三级在线播放 | 5级黄色片 | 久久a视频 | a级一a一级在线观看 | 99久久久国产 | 在线视频 亚洲 | 黄色免费视频网站 | 成人开心激情 | 亚洲va国产va天堂va久久 | 亚洲做受高潮 | 玖玖在线免费视频 | 美女洗澡无遮挡 | 国产精品剧情一区 | 暗呦丨小u女国产精品 | 精品综合久久 | www午夜视频 | 午夜影院毛片 | 婷婷中文在线 | 淫人网| 欧美精品国产一区 | 国产精品免费视频一区二区 | 亚洲男人第一av | 91精选国产| 老师的肉丝玉足夹茎 | 亚洲做受高潮无遮挡 | 亚洲精品一区二区18漫画 | 西西大胆午夜视频 | 99综合久久 | 少妇又白又嫩又色又粗 | 欧美日韩国产成人在线 | av最新| 国产综合精品在线 | 娇妻玩4p被三个男人伺候电影 | 日本爽爽 | 91精彩视频 | 亚洲男人天堂2019 | 同人动漫在线观看 | 国产一区在线看 |