主頁(yè) > 知識(shí)庫(kù) > python基礎(chǔ)入門之列表(一)

python基礎(chǔ)入門之列表(一)

熱門標(biāo)簽:聊城語(yǔ)音外呼系統(tǒng) 地圖標(biāo)注自己和別人標(biāo)注區(qū)別 ai電銷機(jī)器人的優(yōu)勢(shì) 海外網(wǎng)吧地圖標(biāo)注注冊(cè) 孝感營(yíng)銷電話機(jī)器人效果怎么樣 南陽(yáng)打電話機(jī)器人 商家地圖標(biāo)注海報(bào) 打電話機(jī)器人營(yíng)銷 騰訊地圖標(biāo)注沒(méi)法顯示

因?yàn)樽罱居衟ython項(xiàng)目維護(hù),所以把python的基礎(chǔ)入門的書整理一遍,因?yàn)橛行┩浟?,同時(shí)在看python編程>>這本書的時(shí)候覺(jué)得對(duì)有基礎(chǔ)的有很多的贅余,打算直接整理不同之處。

因?yàn)閜ython 有2版本和3版本,如果新學(xué)的話,建議直接3版本,2版本已經(jīng)不會(huì)再升級(jí)了,也就是不再維護(hù)了。

同時(shí)也規(guī)勸一句,如果是用python專門去做網(wǎng)站的話,那么是不建議的,因?yàn)檫@不是python的強(qiáng)項(xiàng)。同時(shí)也不要誤以為python動(dòng)態(tài)語(yǔ)言性能效率就不適合做一些服務(wù),因?yàn)橛行┓?wù)性能不是一個(gè)瓶頸,可能問(wèn)題在網(wǎng)絡(luò)一頭等。

總之一句話,py發(fā)展這么快,一個(gè)是因?yàn)樯鐓^(qū),同時(shí)也是因?yàn)閜ython這門語(yǔ)言的設(shè)計(jì)上,那么就先來(lái)看下列表吧,因?yàn)樘S昧恕`?,如果你還不會(huì)裝python,那么直接百度吧,建議一開始直接exe安裝。

正文

在此之前呢,先介紹一個(gè)string類型,因?yàn)閟trign類型的介紹很簡(jiǎn)短,那么就直接放到這一小節(jié)中。

name="jack rose";
print(name.title())

那么它會(huì)輸出,Jack Rose,這個(gè)title就是用來(lái)首字母大寫的。

看下c# 的首字母大寫:Strings.StrConv("str.str.str str_str", VbStrConv.ProperCase, System.Globalization.CultureInfo.CurrentCulture.LCID);

是的,python就是這么方便,操作數(shù)據(jù)的方便,后面你能更加感受到。

name="jack rose";
str1=name+1+"2";
print(name.title())

但是依然有值得注意的地方,在其他高級(jí)語(yǔ)言如python和java中是沒(méi)得問(wèn)題的,但是在py中是存在問(wèn)題的。

Traceback (most recent call last):
  File "index.py", line 2, in module>
    str1=name+1+"2";
TypeError: cannot concatenate 'str' and 'int' objects

為什么不會(huì)自動(dòng)轉(zhuǎn)換呢?他們兩個(gè)對(duì)象不一樣,那么就會(huì)失敗,為啥會(huì)這樣呢?這個(gè)是涉及問(wèn)題,來(lái)看下int 如果轉(zhuǎn)換為str的

a=str(1)
print(a)

和其他語(yǔ)言不一樣,其他語(yǔ)言有tostring,那么轉(zhuǎn)換的時(shí)候就會(huì)調(diào)用tostring,而py中,是一個(gè)str函數(shù),設(shè)計(jì)的不同意味著他們的寫法不同。

看下其他幾個(gè)簡(jiǎn)單的。

name=" jack rose ";
print(name.lstrip())

lstrip 是去除左邊的空格,然后rstrip 去除右邊的空格。在此說(shuō)明的不是說(shuō)lstrip這個(gè)函數(shù),而是想說(shuō)明,py有很多函數(shù)分為左右,如果你發(fā)現(xiàn)一個(gè)函數(shù)有從左查詢,那么一定有一個(gè)從右查詢,這就是為啥py這么方便,因?yàn)樘峁┝颂嗪瘮?shù)。

是的,它的語(yǔ)義化,讓你不需要去尋找哪個(gè)函數(shù)干什么的,從英文中就能推斷出。string 到此就結(jié)束了,那么看到下本章的主要,列表。

增刪改查

首先python沒(méi)有數(shù)組,一門動(dòng)態(tài)語(yǔ)言要啥數(shù)組呢?來(lái)看看其操作方便的列表。

name=" jack rose ";
list=['a','b','c']
print(list);

輸出:['a','b','c'],好吧這里可能有人疑問(wèn)這為啥不是數(shù)組呢?你可以理解為這是一種語(yǔ)法。

為了證明其不是一個(gè)string數(shù)組:

list=['a','b','c']
list.append(1);
print(list);

輸出:['a', 'b', 'c', 1]

好的上述你看到了添加,那么看下插入吧。

list=['a','b','c']
list.append(1);
list.insert(0,1);
print(list);

輸出:[1, 'a', 'b', 'c', 1]

它的規(guī)則也很簡(jiǎn)單,就是在當(dāng)前位置寫入,其他的位置往后移動(dòng)。

在此說(shuō)明一點(diǎn),我們可以像索引一樣去訪問(wèn)列表。

list=['a','b','c']
print(list[0]);

輸出a。除了這樣,我們還可以list[-1],將會(huì)返回'c',而不是異常,這讓我們的計(jì)算方便很多,我們不需要去計(jì)算最后一個(gè)位置的位置。
看下刪除:

list=['a','b','c']
del list[0]
print(list);

輸出:['b', 'c']

在這里說(shuō)明一下,不僅是列表這樣刪除,其他的類型也是這樣刪除的。

a='a';
del a;
print(a);

是的,這樣就沒(méi)有a了。

Traceback (most recent call last):
  File "index.py", line 5, in module>
    print(a);
NameError: name 'a' is not defined

這樣說(shuō)吧,a并沒(méi)有刪除,只是刪除了a和'a'的聯(lián)系,就想指針指向一樣。

指定位置彈出:

list=['a','b','c']
list.pop();
print(list);

返回:[a,b]
那么默認(rèn)是彈出最后一個(gè)位置,如果指定位置的話,比如說(shuō)第一個(gè),那么pop(0)即可。

那么如何根據(jù)值來(lái)刪除呢?

list=['a','b','c','a']
list.remove('a');
print(list);

輸出值:['b', 'c', 'a']

可以看到值刪除了一個(gè),那么如果全部刪除呢?這個(gè)后面系列將會(huì)介紹到,也許你現(xiàn)在可以想象遍歷一下。對(duì)了有一個(gè)函數(shù)count,list.count('a')會(huì)計(jì)算a出現(xiàn)的次數(shù),而正在的計(jì)算list大小,是通過(guò)len,這個(gè)函數(shù),如len(list)

在我們編程中排序時(shí)少不了的,有臨時(shí)排序還有永久排序。臨時(shí)排序就是返回一個(gè)新的list,永久就是直接修改list,他們分別對(duì)應(yīng)的函數(shù)是:

list=['b','c','d','a']
print(sorted(list));
print(list);
list.sort();
print(list);

輸出:

['a', 'b', 'c', 'd']
['b', 'c', 'd', 'a']
['a', 'b', 'c', 'd']

在此你可以知道sorted 是臨時(shí)排序,sort 是永久排序,值得總結(jié)的是:一般來(lái)說(shuō)自身函數(shù)的調(diào)用是永久操作自己,而外部會(huì)創(chuàng)造另一個(gè)對(duì)象。

再舉另外一個(gè)例子:reverse,list.reverse是操作自己,而不是返回一個(gè)新對(duì)象,reversed(list);返回一個(gè)新對(duì)象。

循環(huán)

list=['b','c','d','a']
for item in list:
    print(item)

循環(huán)非常的簡(jiǎn)單,但是值得注意的是list后面需要又要給:,這是需要注意的語(yǔ)法。

同樣需要介紹另外一個(gè)東西,pass.

假如我們for語(yǔ)句什么都不做,好的,不要糾結(jié)為啥什么都不做。
那么可以這樣:

list=['b','c','d','a']
for item in list:
    pass

如果沒(méi)有pass,那么將會(huì)報(bào)錯(cuò),pass 是占位語(yǔ)句。

其他的功能函數(shù)

前面介紹到,py操作數(shù)據(jù)是真的方便,那么如果要生成一些數(shù)據(jù)是否同樣方便?

for item in range(0,10):
print(item);

輸出:

0
1
2
3
4
5
6
7
8
9

這樣就生成了0-9。前開后閉類型的。

同樣你可以跳過(guò)一些:

for item in range(0,10,2):
    print(item);

0
2
4
6
8

同樣可以進(jìn)行一些統(tǒng)計(jì):

list=range(0,10,2);
print(min(list));
print(max(list));
print(sum(list));

得到0,8,20。

給各位介紹一個(gè)神器的語(yǔ)法,比如你想要上面的list增加1,然后賦值給一個(gè)新的list,那么怎么寫呢?

list=range(0,10,2);
list2=[item++1 for item in list]
print(list2);

這樣就是:[1, 3, 5, 7, 9]

這里我寫的是item++1,這和我們c# item++一樣,語(yǔ)法不通而已。

那么如果我要復(fù)制一個(gè)list怎么辦呢?

list=range(0,10,2);
list2=list[:]
print(list2);

這樣就行。[:]是否只能用來(lái)copy呢?當(dāng)然不是,它是片切的一種語(yǔ)法。

list=range(0,10,2);
print(list);
list2=list[1:2]
print(list2);

輸出:

[0, 2, 4, 6, 8]
[2]

獲取從1開始,到2介紹,且不包含2。

還是前開后閉原則。

除了可以填寫正數(shù),你還可以填寫負(fù)數(shù):

list=range(0,10,2);
print(list);
list2=list[-1:]
print(list2);

相信也猜到了,沒(méi)錯(cuò)就是獲取最后一個(gè)。

元組

如果你希望你定下的一些數(shù)據(jù)被修改,那么你可以使用元組。

tuple=(100,200)

這樣就創(chuàng)建了一個(gè)元組,是的,把一些數(shù)據(jù)放在括號(hào)中。

元組一般用于查詢,他的函數(shù)也非常少。

到此這篇關(guān)于python基礎(chǔ)入門之列表(一)的文章就介紹到這了,更多相關(guān)python 列表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python 列表(List)操作方法詳解
  • Python實(shí)現(xiàn)合并兩個(gè)列表的方法分析
  • python 把列表轉(zhuǎn)化為字符串的方法
  • Python統(tǒng)計(jì)列表中的重復(fù)項(xiàng)出現(xiàn)的次數(shù)的方法
  • python提取字典key列表的方法
  • Python3中列表list合并的四種方法
  • Python中將字典轉(zhuǎn)換為列表的方法
  • python比較兩個(gè)列表是否相等的方法
  • Python將列表數(shù)據(jù)寫入文件(txt, csv,excel)
  • Python中列表元素轉(zhuǎn)為數(shù)字的方法分析

標(biāo)簽:撫州 揚(yáng)州 南寧 六盤水 牡丹江 迪慶 聊城 楊凌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《python基礎(chǔ)入門之列表(一)》,本文關(guān)鍵詞  python,基礎(chǔ),入門,之,列表,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《python基礎(chǔ)入門之列表(一)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于python基礎(chǔ)入門之列表(一)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章