Python主要有三种数据类型:字典、列表、元组。其分别由花括号,中括号,小括号表示。

 列表/元组/集合/字典的理解

(1)列表是任意对象的序列。列表用方括号表示。

(2)将一组值打包到一个对象中,称为元组。元组用小括号表示。元组和列表的大部分操作相同。但是,列表是不固定的,可以随时插入,删除;而元组一旦确认就不能够再更改。所以,系统为了列表的灵活性,就需要牺牲掉一些内存;而元组就更为紧凑。(注意,元组在定义过程中,字符串必须用单引号‘扩起来。)

(3)与列表和元组不同,集合是无序的,也不能通过索引进行访问。此外,集合中的元素不能重复。

(4)字典就是一个关联数组或散列表,其中包含通过关键字索引的对象。用大括号表示。与集合相比,通过关键字索引,所以比集合访问方便。字典是Python解释器中最完善的数据类型。

  • 元组(tuple):

  元组常用小括号表示,即:(),元素加逗号,是元组的标识。



#定义一个元组

#tuple = 'a',

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

#常规来说,定义了一个元组之后就无法再添加或修改元组的元素,但对元组切片可以添加会修改元组的元素。

print tuple[1:5]

tuple = tuple[:2]+('h')+temp[2:]

print(tuple)

#使用for循环进行遍历元组

for each in tuple:

    print each

#通过range()函数和for循环获取元组内元素的序号

for index in range(len(tuple)):

    print tuple[index]



  

  •  列表(list):

  列表常用方括号表示,即:[];

  创建一个列表,只要把用逗号分隔的不同的数据项使用方括号括起来即可。

  例如:



1 list1 = ['a','b','c',1,3,5] 2 list2 = [1,2,3,4,5,6] 3 list3 = ["abc","bcd","cde"]



  遍历列表:(len(each):表示每个迭代变量的长度,each:表示每个迭代的变量)



1 list1 = ['a','b','c',1,3,5] 2 for each in list1 3 print(each,len(each))



  列表中常用的函数:

  cmp(list1,list2):比较两个列表的元素

 

  len(list):返回列表元素个数

 

  max(list):返回列表元素最大值

 

  min(list):返回列表元素最小值

 

  list(tuple):将元组转换为列表

 

  列表中常用的9个方法:

  list.append(obj):在列表的末尾添加新的对象

  

  list.count(obj):统计某个元素在列表中出现的次数

 

  list.extend(list):在列表末尾添加包含多个值的另一个序列,有扩展列表的作用

  

  list.insert(index,obj):将对象插入列表中的第index元素之前

 

  list.pop(obj=list[-1]):默认移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 

  

  list.remove(obj):移除列表中某个值

 

  list.reverse():将列表中的元素反向排列

 

  list.sort(function()):将列表进行排序

 

  •  字典(dict)

  字典是由花括号{}来包含其数据的,花括号内包含键(key)和其对应的值(value),一对键和值成为一个项,键和值用冒号:隔开,项和项之间用逗号,隔开,空字典就是不包含任何项的字典,也可理解为空字典就是花括号内不包含任何内容,直接使用花括号{}表示。

  创建一个字典:

  dict = {'name':'john','age':20,'sex':male}

  备注:键是一个不可变的数据类型

  访问字典:

  由于字典是无序的,访问字典不能通过索引的方式;通过变量名[键名]来访问。

  字典添加项:

  变量名:[新添加的键名] = 新添加的键对应的值

 

  字典修改项的值:

  变量名:[要修改的键名] = 新值

 

  字典删除项或值:

  del方法:删除键对应的值,del 变量名[键名];

       删除字典,del 变量名。

 

  clear方法:清空字典内容。

        变量名.clear()

 

  pop方法:删除键对应的值,但是它会把对应的值输出后再删除

 

 

 

Python 双引号 单引号 多引号区别

 

先说1双引号与3个双引号的区别,双引号所表示的字符串通常要写成一行 
如: 
s1 = "hello,world" 
如果要写成多行,那么就要使用/ (“连行符”)吧,如 
s2 = "hello,/ 
world" 
s2与s1是一样的。如果你用3个双引号的话,就可以直接写了,如下: 
s3 = """hello, 
world, 
hahaha.""",那么s3实际上就是"hello,/nworld,/nhahaha.", 注意“/n”,所以, 
如果你的字符串里/n很多,你又不想在字符串中用/n的话,那么就可以使用3个双 
引号。而且使用3个双引号还可以在字符串中增加注释,如下: 
s3 = """hello,  #hoho, this is hello, 在3个双引号的字符串内可以有注释哦 
world,          #hoho, this is world 
hahaha."""

这里我试过一下,确实可以加注释,不过在print s3的时候连注释内容会一起给打印出来 
这就是3个双引号和1个双引号表示字符串的区别了,3个双引号与1个单引号的区别也 
是和这个一样的,实际上python支持单引号是有原因的,下面我来比较1个单引号和 
1个双引号的区别。 

当我用单引号来表示一个字符串时,如果要表示 Let's go 这个字符串,必须这样: 
s4 = 'Let/'s go',注意没有,字符串中有一个',而字符串又是用'来表示,所以 
这个时候就要使用转义符 / (/,转义符应该知道吧), 如果你的字符串中有一大堆 
的转义符,看起来肯定不舒服,python也很好的解决了这个问题,如下: 
s5 = "Let's go" 
这时,我们看,python知道你是用 " 来表示字符串,所以python就把字符串中的那 
个单引号 ' , 当成普通的字符处理了,是不是很简单。 
对于双引号,也是一样的,下面举个例子 
s6 = 'I realy like "python"!' 
这就是单引号和双引号都可以表示字符串的原因了。