Python(字符串,列表,元组,字典)

1.字符串:标识" "

PS:字符串是%s;整数是%d;浮点数%f

strip:移除(空白或者特定字符)

split:分割

len:长度(获取元素的个数)

索引

切片

2.列表list:方括号[ ]

PS:先了解

  • 序列是Python中最基本的数据结构,Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。
  • 列表是最常用的Python数据类型
list=["alex","oldboy","nosong","noway","nobody","jack"]
number=[1,2,3,4,5,6,7,8,9]
print("索引",list.index("nosong"))
print("切片",number[2:5])
print("步长",number[1:8:2])
number.append(10)
print("追加",number)
number.insert(3,444)
print("插入",number)
print("长度",len(number))
del number[0]
print("删除",number)
#循环输出值
for i in list:
    print(i) 
#带下标输出
for k,v in enumerate(list):
    print(k,v)
#包含
if "alex" in list:
    print("包含:yes")
View Code

删除list末尾元素,用pop():

>>> classmates.append('Tom')
>>> print classmates
['john', 'jack', 'Tom']
>>> classmates.pop()
'Tom'

删除指定位置元素,用pop(i):

>>> print classmates
['john', 'jack', 'Tom']
>>> classmates.pop()
'Tom'
>>> classmates.pop(0)
'john'

替换某个元素,直接赋值给对应的索引位置:例子省略

list 元素也可以是另一个list,它只是表示一个元素:

>>> s=['python','java',['c','c++'],'php']
>>> len(s)
4

接着要拿到' c '可以写成s[2][1],因此s可以看成一个二维数组,类似三维,四位

空的list,长度为0:

>>> L=[]
>>> len(L)
0

python 创建二维列表,将需要的参数写入 cols 和 rows 即可:

#创建二维列表:list_2d = [[0 for col in range(cols)] for row in range(rows)]
list_2d=[[0 for i in range(5)]for i in range(6)]
print list_2d    
list_2d[0].append(3)
list_2d[0].append(5)
list_2d[2].append(8)
print list_2d
View Code

列表排序:

#list.sort()     对列表元素排序,数字的话从小到大
>>> a=[1,4,3,4,7,8]
>>> a.sort()
>>> a
[1, 3, 4, 4, 7, 8]

#list.reverse()    对列表元素进行倒序
>>> a=[1,4,3,4,7,8]
>>> a.reverse()
>>> a
[8, 7, 4, 4, 3, 1]
View Code

 

3.元组tuple:小括号()

PS:元组不能二次赋值,相当于只读列表。即元组的元素不能修改

tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )

list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]

tuple[2] = 1000   # 元组中是非法应用

list[2] = 1000   # 列表中是合法应用
View Code
#创建空元组
tup1=()
#元组中只包含一个元素时,需要在元素后面添加逗号,因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义
tup1=(50,)

注意:不可变指的是tuple的元素,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。

>>> t=('a','b',['A','B'])
>>> t[2][0]='X'
>>> t[2][1]='Y'
>>> t
('a', 'b', ['X', 'Y'])            #一个“可变”的tuple,实际上是list的元素变了

输出:

tuple=('runoob',78,2.23,'john',70.2)
tinytuple=(123,'john')
print tuple
print tuple[0]
print tuple[1:3]    #输出第二个至第三个的元素
print tuple[2:]        #输出从第三个开始至列表末尾的元素
print tinytuple*2
print tuple+tinytuple
View Code

访问元组:

#!/usr/bin/env python
# -*- coding:utf-8 -*-

tup1=('physics','chemistry',1990,2001)
tup2=(1,2,3,4,5)

print "tup1[0]:",tup1[0]
print "tup2[1:4]:",tup2[1:4]
View Code

元组元素值不能修改,但能进行元组连接组合:

tup1=(12,23,34)
tup2=('abc','xyz')
#创建一个新的元组,进行连接组合
tup3=tup1+tup2
print tup3
View Code

元组不能增加元素,没有append和extend方法

元组不能删除元素,tuple没有remove或pop,但可使用del语句来删除整个元组:

tup=('abc','john',123,446)
print tup
del tup
print "After deleting tup:"
print tup
View Code

 迭代:

tup=(1,2,3)
for i in tup:
    print i
View Code

计算元素个数:

tup=(2,3,4,5,6,7)
print len(tup)
View Code

索引:

L=('a','b','c','d')
print L[-2]     #反向读取,读取倒数第二个元素:c
View Code

无关闭分隔符:任意无符号的对象,以逗号隔开,默认为元组,如:

print 'abc',-4.2e21,18+6j,'xyz'
x,y=1,2
print "Value of x,y:",x,y
View Code

比较两个元组:cmp(tup1,tup2)

返回元组中元素最大值,最小值:max(tup); min(tup)

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

print tuple([1,2,3,4])

print tuple({1:2,3:4})     #针对字典 会返回字典的key组成的tuple:(1,3)

#元组会返回元组本身
View Code

 

4.字典dict:花括号{ }

组成:由索引(key)和它对应的值value组成,格式:d = {key1 : value1, key2 : value2 }

字典是另一种可变容器模型,且可存储任意类型对象。字典是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。

键必须是唯一的,但值则不必。

两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

 创建:

dict1={'abc':111,'Age':37}
View Code

访问字典中的值:(如果用字典里没有的键访问数据,会输出错误)

dict={'Name':'john','Age':7,'Class':'First'}
print "dict['Name']:",dict['Name']
print "dict['Age']:",dict['Age']
View Code

修改字典:

#修改字典的方法是增加新的键/值对,修改或删除已有的键/值对
dict={'Name':'john','Age':7,'Class':'First'}
dict['Age']=8    #修改
dict['School']='Yi Ling School'  #增加

del dict['Name']   #删除键为'Name'的条目
print dict
dict.clear()          #清除dict字典的所有条目
print dict
del dict
print dict
View Code

字典键的特性:

  • 不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住:

View Code

  • 键必须不可变,所以可以用数字,字符串或元组充当,所以用列表就不行:

View Code

5.set:  set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key

1.要创建一个set,需要提供一个list作为输入集合:

  >>> a=set([1,2,3])

  >>> a

  set([1, 2, 3])

  

posted @ 2018-03-04 15:27  木心熊  阅读(292)  评论(0编辑  收藏  举报