Python语法学习二之集合

一、字符串

    b = "hello itcast.cn"
    或者
    b = 'hello itcast.cn'

二、下标和切片

2-1、下标
3163615-6606d63298f608ea.png
图片.png
2-2、切片

切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。

    切片的语法:[起始:结束:步长]
    注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。
     name = 'abcdef'
     print(name[0:3]) # 取 下标0~2 的字符

三、字符串常见操作

待总结,略

四、列表

注意:Python中的列表元素可以是不同类型的

    namesList = ['zhangsan','lisi','wangwu']
4-1、遍历列表
    namesList = ['zhangsan','lisi','wangwu']
    for name in namesList: 
        print(name)
    length = len(namesList)
    i = 0
    while i<length:
        print(namesList[i])
        i+=1
4-2、列表相关操作
4-2-1、添加元素
append:通过append可以向列表添加元素
extend:通过extend可以将另一个集合中的元素逐一添加到列表中
insert:insert(index, object) 在指定位置index前插入元素object
4-2-2、修改元素
# 修改元素
namesList[1] = 'cehae'
print namesList
4-2-3、查找元素
in, not in
python中查找的常用方法为:
    in(存在),如果存在那么结果为true,否则为false
    not in(不存在),如果不存在那么结果为true,否则false


# 查找是否存在
if 'cehae' in namesList:
    print('找到了相同的名字')
else:
    print('没有找到')
index, count
查找下标和个数


a = ['a', 'b', 'c', 'a', 'b']

# 在区间[1,4)中查找元素'a'
print a.index('a', 1, 4)

# 查找元素'b'的个数
print a.count('b')
4-2-4、删除元素
列表元素的常用删除方法有:

    del:根据下标进行删除
    pop:删除最后一个元素
    remove:根据元素的值进行删除


list = ['a', 'b', 'c', 'd', 'e', 'f']

# 删除下标为2的元素
del list[2]

# 删除列表的最后一个元素
list.pop()

# 删除值为指环王的元素
list.remove('a')

print list
4-2-5、列表排序
sort方法是将list按特定顺序重新排列,默认为由小到大,参数reverse=True可改为倒序,由大到小。

reverse方法是将list逆置。


a = [1, 4, 2, 3]
a.reverse()
print a

a.sort(reverse=True)
print a

五、元组

Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。

5-1、元组相关操作
5-1-1、查询元组数据
# 查询元组数据
tuple = ('hello', 'python')
print tuple[0]
print tuple[1]
5-1-2、修改元组数据

注意: python中不允许修改元组的数据,包括不能删除其中的元素。

# 修改元组数据
# 注意: python中不允许修改元组的数据,包括不能删除其中的元素。
tuple[1] = 'myPython'
5-1-3、元组内置函数count, index

index和count与字符串和列表中的用法相同

a = ('a', 'b', 'c', 'a', 'b')
# 在区间[1,4)中查找元素'a'
print a.index('a', 1, 4)

# 查找元素'b'的个数
print a.count('b')

六、字典

6-1、定义字典
 info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}

说明:

  • 字典和列表一样,也能够存储多个数据
  • 列表中找某个元素时,是根据下标进行的
  • 字典中找某个元素时,是根据'名字'(就是冒号:前面的那个值,例如上面代码中的'name'、'id'、'sex')
  • 字典的每个元素由2部分组成,键:值。例如 'name':'班长' ,'name'为键,'班长'为值
6-2、字典的常见操作一
6-2-1、查询元素
info = {'name': '班长', 'id': 100, 'sex': 'f', 'address': '地球亚洲中国北京'}
print(info['name'])
# 班长

print(info['address'])
# 地球亚洲中国北京

若访问不存在的键,则会报错
在我们不确定字典中是否存在某个键而又想获取其值时,可以使用get方法,还可以设置默认值

age = info.get('age')
print age  # 'age'键不存在,所以age为None
#None

print type(age)
#<type 'NoneType'>

age = info.get('age', 18)  # 若info中不存在'age'这个键,就返回默认值18
print age
#18

print info.get('name')
#班长
6-2-2、修改元素
info['id'] = 666

print('修改之后的id为%d:'%info['id'])
6-2-3、添加元素
info['id'] = 666 #修改
info['hobby'] = 'LOL' #hobby字段不存在,此时为添加操作
6-2-4、删除元素
对字典进行删除操作,有一下几种:

    del key:删除元素
    clear() 字典名:清空字典

    del info['hobby'] #删除hobby字段
    del info #清空字典
    
    info.clear() #清空字典
6-3、字典的常见操作二
# len,查询字典中键值对的个数
dict = {"name": "cehae", "sex": "m", "age": 17}
print len(dict)

# keys,返回一个包含字典所有KEY的列表
print dict.keys()

# values,返回一个包含字典所有value的列表
print dict.values()

#items,返回一个包含所有(键,值)元祖的列表
print dict.items()

# has_key,dict.has_key(key)如果key在字典中,返回True,否则返回False
print dict.has_key("name")

七、集合类操作总结

7-1、遍历
7-1-1、for in 遍历

通过for ... in ...:的语法结构,我们可以遍历字符串、列表、元组、字典等数据结构。

# 字符串遍历
str = "hello itcast"

for char in str:
    print char

# 列表遍历
list = [1, 2, 3, 4, 5]
for num in list:
    print num

# 元组遍历
tuple = (6, 7, 8, 9, 10)
for num in tuple:
    print num

# 字典遍历
dict = {"name": "cehae", "sex": "m", "age": 17}
print ("--------遍历方法1-------------")
for key in dict.keys():
    print key
print ("---------遍历方法2------------")
for key, value in dict.items():
    print key
    print value
7-1-2、带有下标遍历
chars = ['a', 'b', 'c', 'd']
index = 0
for char in chars:
    print ("%d %s" % (index, chars[index]))
    index += 1
7-1-3、enumerate()方法遍历
chars = ['a', 'b', 'c', 'd']
for i, char in enumerate(chars):
    print i, char
7-2、公众方法
7-2-1、运算符
3163615-f12a154a070e3f25.png
图片.png

注意,in在对字典操作时,判断的是字典的键

>>> 'hello' +  'python'
'hellopython'

>>> [2,3]+[4,3]
[2, 3, 4, 3]

>>> 'wd'*4
'wdwdwdwd'

>>> 'p' in 'python'
True
>>>
7-2-2、内置函数
3163615-396ddc75099b1e63.png
图片.png
>>> cmp('hello','cehae')
1
>>> cmp([1,2],[1,3])
-1
>>> cmp([1,2],[1,2])
0
>>> cmp({'name':'cehae'},{'name':'cehae1'})
-1
>>> cmp({'name':'cehae2'},{'name':'cehae1'})
1
>>> cmp({'name':'cehae1'},{'name':'cehae1'})
0
>>> cmp({'name1':'cehae1'},{'name':'cehae1'})
1
>>>
注意
cmp:cmp在比较字典数据时,先比较键,再比较值。
len:len在操作字典数据时,返回的是键值对个数。
del:del有两种用法,一种是del加空格,另一种是del()。
7-3、可变类型与不可变类型
3163615-6a79bb6317379039.png
图片.png

猜你喜欢

转载自blog.csdn.net/weixin_34302798/article/details/86927890