码迷,mamicode.com
首页 > 其他好文 > 详细

列表、元组、字符串、切片和字典的基本操作

时间:2017-10-07 19:35:23      阅读:831      评论:0      收藏:0      [点我收藏+]

标签:mysql   get   作用   split()   dex   als   定位   float   添加   

1、列表的基本操作简介

列表的英文名字是list,叫列表和叫list是一个意思,列表用[]表示,如L = [],表示这是一个空列表,里面没有值,列表里面可以存放int、float、str、bool登录数据类型,可以把一个类型的存放在list里,如nums = [6,3,24,67,31,7,10],也可以把所有类型的都放在一个list里,如names = [‘parker‘,123,10.5,True],还有二维和三维,就是list里面还嵌套一个list

列表的增加操作:

以nums = [6,3,24,67,31,7,10]为例子

第一种方式,append,从末尾给list添加元素,nums.append(9)就是把9这个元素放到了nums这个list的最后面,这是添加int类型的数据,如果要是添加字符串类型的,要把添加的内容用""或‘‘括起来,print(nums)就会打印出[6, 3, 24, 67, 31, 7, 10, 9],可以看到9追加到最后的位置

第二种方式,insert,指定位置添加,如果指定的下标不存在,那么在末尾添加,nums.insert(1,5),print(nums)会打印出[6, 5, 3, 24, 67, 31, 7, 10],可以看到添加的元素5插入到下标为1的位置,之前的下标为1的元素3,现在它的小标是2

第三种方式,extend,从末尾给指定的list添加元素,nums.extend([‘呵呵‘,‘哈哈‘]),print(nums)会打印出[6, 3, 24, 67, 31, 7, 10, ‘呵呵‘, ‘哈哈‘],extend里传入的必须是一个list,就是把后面list里的元素加入到nums里面,nums列表的元素已经包含后面list里的元素

 

列表的查询操作:

其实上面的print(nums)操作就是查询整个list,查看添加到list里面的元素是否已经添加成功都可以通过print(nums)来实现

查询单个元素可以通过print(nums[1])或print(nums[-1]) 的方式,查看下标对应的元素,下标-1代表最后一个元素

 

列表的修改操作:

直接通过赋值的方式来修改,如nums[0] = 88,在print(nums)会打印出[88, 3, 24, 67, 31, 7, 10],可以看到下标为0的6变成了88,修改成功了

 

列表的删除操作:

第一种方式是,del nums[3],然后print(nums)会打印出[6, 3, 24, 31, 7, 10],会把下标为3的元素67删掉

第二种方式,nums.pop(),删除列表里最后一个元素,然后print(nums)会打印出[6, 3, 24, 67, 31, 7],会把最后一个元素10删掉

第三种方式,nums.pop(2),删除指定下标的元素,然后print(nums)会打印出[6, 3, 67, 31, 7, 10],会把下标为2的元素24删掉

第四种方式,nums.remove(31),传入的是元素,不是下标,然后print(nums)会打印出[6, 3, 24, 67, 7, 10],list里面的元素31被删掉了

第五种方式,nums.clear(),清空列表里的所有元素,返回一个空列表,然后print(nums)会打印出[],list里面的所有元素都被删掉了

 

列表的排序操作:

通过.sort()方式,但只是适用于int和float类型,如nums.sort(),然后print(nums)会打印出[3, 6, 7, 10, 24, 31, 67],默认是按升序排列

 

列表的翻转操作:

通过reverse()方式,翻转list中元素的位置,如果上面的排序可以实现降序排列,可以通过nums.sort(reverse = True)实现降序排列,print(nums)打印出[67, 31, 24, 10, 7, 6, 3]

 

列表的拼接操作:

通过‘+‘连接两个list,实现list的拼接,如names + nums ,拼接后的列表是一个新的list,两个list(names、nums)仍然是分开的

以上是list中比较重要的方法,还有一些不重要的方法这里暂时不介绍

 

2、元组的基本操作简介

元组的英文名字是tuple,叫元组和叫tuple是一个意思,元组用()表示,如L = (),表示这是一个空元组,里面没有值,元组里面也可以存放int、float、str、bool登录数据类型,可以把一个类型的存放在tuple里,如nums = (6,3,24,67,31,7,10),也可以把所有类型的都放在一个tuple里,如names = (‘parker‘,123,10.5,True),元组是不可变变量,一旦定义了一个元组,就不能修改里面的值,元组没有增删改查操作,只有两个方法,一个是count(),另一个是index()

nums.count()的作用是统计元组中元素出现的次数

nums.index()的作用是返回元组中元素的下标

 

3、字符串的基本操作简介

字符串就是用""或‘‘括起来的表现形式,如‘‘,这是一个空字符串,‘abc‘、‘1234‘、‘Test‘等这些都是字符串,字符串也是不可变变量,一旦定义了一个字符串,就不能修改里面的值,字符串也没有增删改查操作,字符串的方法很多,这里主要介绍一些常用的和重要的方法

endswith() ,它的作用是判断以什么结尾,返回True或False,这里定义一个字符串,str2 = ‘abc‘,print(str2.endswith(‘c‘))会打印出True,如果不是以指定字符结尾返回False

format() ,它的作用是格式化(参数比较多用format),格式化的内容用{}括起来,如sql = ‘insert into user values({id},{name},{sex},{addr})‘

sql2 = sql.format(addr = ‘北京‘, id = 1234, sex = ‘男‘, name = ‘manu‘),print(sql2)会打印出insert into user values(1234,manu,男,北京)      

print(‘生成的sql语句是{sql},再来个{sql}‘.format(sql = new_sql)),前面有两个一样的{sql},format里面只写一个就可以,format里面的sql和前面的加粗的sql保持一致,叫成别的名字也行,只要能对应上就行

‘‘.join(),它的作用是拼接字符串,如(‘*‘.join([‘hello‘,‘world‘,‘123‘])) ,用*连接list里的各元素,join里传入的可以是list,也可以是tuple,list或tuple里的元素必须是字符串类型,用特殊符号、字母、数字或字符串都可以连接,然后print(‘*‘.join([‘hello‘,‘world‘,‘123‘])打印出来一个字符串

lstrip() ,它的作用是去掉字符串左边的空格和换行,如print(‘  \n aaa‘.lstrip())打印出aaa

rstrip(),它的作用是去掉字符串右边的空格和换行,如print(‘mysql  \n‘.rstrip())打印出mysql

strip(),它的作用是去掉字符串两边的空格和换行,如print(‘\n   bbb  \n‘.strip())打印出bbb,()里也可以去掉指定的字符串,如name = ‘sun,abs‘,print(name.strip(‘s‘))会打印出un,ab

replace(),它的作用是替换字符串,如print(‘mysql is db.‘.replace(‘mysql‘,‘oracle‘))会打印出oracle is db.

split(),它的作用是分割字符串,返回一个list,如print(‘1+2+3+4‘.split(‘+‘))会打印出[‘1‘, ‘2‘, ‘3‘, ‘4‘]

splitlines(),它的作用是按照换行符分割,返回一个list,如print(‘1+2+3\n1+2+3+4‘.splitlines())会打印出[‘1+2+3‘, ‘1+2+3+4‘]

 

4、切片的基本操作简介

切片的英文名是slice,可以对列表、元组和字符串进行切片操作,列表切片后仍然是一个列表,元组切片后仍然是一个元组,字符串切片后仍然是一个字符串,member[1:3]表示取出下标值是1和2的元素,如果member[:3]表示取出下标值是0,1,2的元素,如果member[1:]表示取出下标值从1到最后的元素,还有一种是member[:]表示是对原列表的copy,member[:10:2]表示取出从下标0-9的元素,2代表步长,就是每间隔一个取一个元素,实际上应该取出下标是0,2,4,6,8的元素,member[::-1]会从后取元素,然后打印出来

 

5、字典的基本操作简介

字典的英文名是dict,字典的表现形式是{},这表示空字典,也可以user_info = {‘name‘:‘哈哈‘,‘age‘:‘22‘},字典相比list取值更快,只要print(user_info[‘name‘])就可以把哈哈打印出来,字典是通过key-value存取的,只要找到key,就可以找到对应的value,字典有增删改查操作,下面依次介绍

字典的增加操作:

可以通过user_info[‘addr‘] = ‘北京‘,user_info.setdefault(‘sex‘,‘男‘)这两种方式增加字典里的key和对应的value

 

字典的查询操作:

第一种方式,print(user_info[‘name‘]),如果name不存在的话会报错,如果存在会打印出对应的value

第二种方式,print(user_info.get(‘name‘)),如果name不存在的话会返回None,如果存在会打印出对应的value

 

字典的删除操作:

第一种方式,del user_info[‘name‘],可以删除字典里的name和它对应的value

第二种方式,user_info.pop(‘age‘),这里要传入一个key,然会后删除字典里的name和它对应的value

第三种方式,user_info.popitem(),随机删除一个key和value

 

字典的修改操作:

第一种方式,user_info[‘name‘] = ‘nhy‘,直接赋值

第二种方式,user_info.update(name = ‘孙树江‘)

综上,上面介绍的方法都是比较常用的和实用的方法,要学会活学活用,多动手练习

 

 

 

 

列表、元组、字符串、切片和字典的基本操作

标签:mysql   get   作用   split()   dex   als   定位   float   添加   

原文地址:http://www.cnblogs.com/laosun0204/p/7635421.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!