搜尋
首頁後端開發Python教學Python列表(list)、字典(dict)、字符串(string)基本操作小结

创建列表

代码如下:


sample_list = ['a',1,('a','b')]


Python 列表操作

代码如下:


sample_list = ['a','b',0,1,3]


得到列表中的某一个值

代码如下:


value_start = sample_list[0]
end_value = sample_list[-1]


删除列表的第一个值

代码如下:


del sample_list[0]


在列表中插入一个值

代码如下:


sample_list[0:0] = ['sample value']


得到列表的长度

代码如下:


list_length = len(sample_list)


列表遍历

代码如下:


for element in sample_list:
    print 'element'

  
Python 列表高级操作/技巧

产生一个数值递增列表

代码如下:


num_inc_list = range(30)
#will return a list [0,1,2,...,29]


用某个固定值初始化列表

代码如下:


initial_value = 0
list_length = 5
sample_list = [ initial_value for i in range(10)]
sample_list = [initial_value]*list_length
# sample_list ==[0,0,0,0,0]

附:python内置类型

1、list:列表(即动态数组,C++标准库的vector,但可含不同类型的元素于一个list中)
a = ["I","you","he","she"]      #元素可为任何类型。

下标:按下标读写,就当作数组处理
以0开始,有负下标的使用
0第一个元素,-1最后一个元素,
-len第一个元素,len-1最后一个元素
取list的元素数量

代码如下:


len(list)   #list的长度。实际该方法是调用了此对象的__len__(self)方法。


创建连续的list

代码如下:


L = range(1,5)      #即 L=[1,2,3,4],不含最后一个元素
L = range(1, 10, 2) #即 L=[1, 3, 5, 7, 9]


list的方法

代码如下:


L.append(var)   #追加元素
L.insert(index,var)
L.pop(var)      #返回最后一个元素,并从list中删除之
L.remove(var)   #删除第一次出现的该元素
L.count(var)    #该元素在列表中出现的个数
L.index(var)    #该元素的位置,无则抛异常
L.extend(list)  #追加list,即合并list到L上
L.sort()        #排序
L.reverse()     #倒序
list 操作符:,+,*,关键字del
a[1:]       #片段操作符,用于子list的提取
[1,2]+[3,4] #为[1,2,3,4]。同extend()
[2]*4       #为[2,2,2,2]
del L[1]    #删除指定下标的元素
del L[1:3]  #删除指定下标范围的元素


list的复制

代码如下:


L1 = L      #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。函数参数就是这样传递的
L1 = L[:]   #L1为L的克隆,即另一个拷贝。
     
list comprehension
   [ for k in L if ]

 

2、dictionary: 字典(即C++标准库的map)

代码如下:


dict = {'ob1':'computer', 'ob2':'mouse', 'ob3':'printer'}


每一个元素是pair,包含key、value两部分。key是Integer或string类型,value 是任意类型。
键是唯一的,字典只认最后一个赋的键值。

dictionary的方法

代码如下:


D.get(key, 0)       #同dict[key],多了个没有则返回缺省值,0。[]没有则抛异常
D.has_key(key)      #有该键返回TRUE,否则FALSE
D.keys()            #返回字典键的列表
D.values()          #以列表的形式返回字典中的值,返回值的列表中可包含重复元素
D.items()           #将所有的字典项以列表方式返回,这些列表中的每一项都来自于(键,值),但是项在返回时并没有特殊的顺序        

D.update(dict2)     #增加合并字典
D.popitem()         #得到一个pair,并从字典中删除它。已空则抛异常
D.clear()           #清空字典,同del dict
D.copy()            #拷贝字典
D.cmp(dict1,dict2)  #比较字典,(优先级为元素个数、键大小、键值大小)
                    #第一个大返回1,小返回-1,一样返回0
           
dictionary的复制
dict1 = dict        #别名
dict2=dict.copy()   #克隆,即另一个拷贝。


3、tuple:元组(即常量数组)

代码如下:


tuple = ('a', 'b', 'c', 'd', 'e')


可以用list的 [],:操作符提取元素。就是不能直接修改元素。

4、string:     字符串(即不能修改的字符list)

代码如下:


str = "Hello My friend"


字符串是一个整体。如果你想直接修改字符串的某一部分,是不可能的。但我们能够读出字符串的某一部分。
子字符串的提取

代码如下:


str[:6]


字符串包含判断操作符:in,not in

代码如下:


"He" in str
"she" not in str


string模块,还提供了很多方法,如

代码如下:


S.find(substring, [start [,end]]) #可指范围查找子串,返回索引值,否则返回-1
S.rfind(substring,[start [,end]]) #反向查找
S.index(substring,[start [,end]]) #同find,只是找不到产生ValueError异常
S.rindex(substring,[start [,end]])#同上反向查找
S.count(substring,[start [,end]]) #返回找到子串的个数

S.lowercase()
S.capitalize()      #首字母大写
S.lower()           #转小写
S.upper()           #转大写
S.swapcase()        #大小写互换

S.split(str, ' ')   #将string转list,以空格切分
S.join(list, ' ')   #将list转string,以空格连接


处理字符串的内置函数

代码如下:


len(str)                #串长度
cmp("my friend", str)   #字符串比较。第一个大,返回1
max('abcxyz')           #寻找字符串中最大的字符
min('abcxyz')           #寻找字符串中最小的字符


string的转换

代码如下:

           
float(str) #变成浮点数,float("1e-1")  结果为0.1
int(str)        #变成整型,  int("12")  结果为12
int(str,base)   #变成base进制整型数,int("11",2) 结果为2
long(str)       #变成长整型,
long(str,base)  #变成base进制长整型,


字符串的格式化(注意其转义字符,大多如C语言的,略)
str_format % (参数列表) #参数列表是以tuple的形式定义的,即不可运行中改变
>>>print ""%s's height is %dcm" % ("My brother", 180)
          #结果显示为 My brother's height is 180cm

。。。。。。。。。。。。。。。。。。

list 和 tuple 的相互转化

tuple(ls)
list(ls)

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
详细讲解Python之Seaborn(数据可视化)详细讲解Python之Seaborn(数据可视化)Apr 21, 2022 pm 06:08 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于Seaborn的相关问题,包括了数据可视化处理的散点图、折线图、条形图等等内容,下面一起来看一下,希望对大家有帮助。

详细了解Python进程池与进程锁详细了解Python进程池与进程锁May 10, 2022 pm 06:11 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于进程池与进程锁的相关问题,包括进程池的创建模块,进程池函数等等内容,下面一起来看一下,希望对大家有帮助。

Python自动化实践之筛选简历Python自动化实践之筛选简历Jun 07, 2022 pm 06:59 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于简历筛选的相关问题,包括了定义 ReadDoc 类用以读取 word 文件以及定义 search_word 函数用以筛选的相关内容,下面一起来看一下,希望对大家有帮助。

归纳总结Python标准库归纳总结Python标准库May 03, 2022 am 09:00 AM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于标准库总结的相关问题,下面一起来看一下,希望对大家有帮助。

分享10款高效的VSCode插件,总有一款能够惊艳到你!!分享10款高效的VSCode插件,总有一款能够惊艳到你!!Mar 09, 2021 am 10:15 AM

VS Code的确是一款非常热门、有强大用户基础的一款开发工具。本文给大家介绍一下10款高效、好用的插件,能够让原本单薄的VS Code如虎添翼,开发效率顿时提升到一个新的阶段。

python中文是什么意思python中文是什么意思Jun 24, 2019 pm 02:22 PM

pythn的中文意思是巨蟒、蟒蛇。1989年圣诞节期间,Guido van Rossum在家闲的没事干,为了跟朋友庆祝圣诞节,决定发明一种全新的脚本语言。他很喜欢一个肥皂剧叫Monty Python,所以便把这门语言叫做python。

Python数据类型详解之字符串、数字Python数据类型详解之字符串、数字Apr 27, 2022 pm 07:27 PM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于数据类型之字符串、数字的相关问题,下面一起来看一下,希望对大家有帮助。

详细介绍python的numpy模块详细介绍python的numpy模块May 19, 2022 am 11:43 AM

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于numpy模块的相关问题,Numpy是Numerical Python extensions的缩写,字面意思是Python数值计算扩展,下面一起来看一下,希望对大家有帮助。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 Mac版

SublimeText3 Mac版

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

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!