-
list切片
通过索引来取
list[0:3] 从索引0开始取,取到索引为3为止但不包括3
上面的可以缩写成list[:3]
如果从头到尾的截取一个list,可以直接缩写成list[:]
这样的本质就是重新复制一个新的list
查看全部 -
Python中替换元素
>>> L = ['Adam', 'Lisa', 'Bart']
现在,Bart同学要转学走了,碰巧来了一个Paul同学,要更新班级成员名单,我们可以先把Bart删掉,再把Paul添加进来。
另一个办法是直接用Paul把Bart给替换掉:
>>> L[2] = 'Paul' >>> print L L = ['Adam', 'Lisa', 'Paul']
对list中的某一个索引赋值,就可以直接用新的元素替换掉原来的元素,list包含的元素个数保持不变。
由于Bart还可以用 -1 做索引,因此,下面的代码也可以完成同样的替换工作:
>>> L[-1] = 'Paul'
查看全部 -
注意右边编辑器代码中 list 如下:
L = ['Adam', 'Lisa', 'Paul', 'Bart']
Paul的索引是2,Bart的索引是3,如果我们要把Paul和Bart都删掉,请解释下面的代码为什么不能正确运行:
L.pop(2)
L.pop(3)怎样调整代码可以把Paul和Bart都正确删除掉?
解:
L = ['Adam', 'Lisa', 'Paul', 'Bart']
L.pop(2)
L.pop(2)
print L
注释,程序由上至下原来数组3的位置允许第一条删除语句后变为2的位置
查看全部 -
Python从list删除元素
如果Paul同学排在最后一个,我们可以用list的
pop()
方法删除:>>> L = ['Adam', 'Lisa', 'Bart', 'Paul'] >>> L.pop() 'Paul' >>> print L ['Adam', 'Lisa', 'Bart']
pop()方法总是删掉list的最后一个元素,并且它还返回这个元素,所以我们执行 L.pop() 后,会打印出 'Paul'。
如果Paul同学不是排在最后一个怎么办?比如Paul同学排在第三:
>>> L = ['Adam', 'Lisa', 'Paul', 'Bart']
要把Paul踢出list,我们就必须先定位Paul的位置。由于Paul的索引是2,因此,用
pop(2)
把Paul删掉:>>> L.pop(2) 'Paul' >>> print L ['Adam', 'Lisa', 'Bart']
查看全部 -
Python集合之添加新元素
第一个办法是用 list 的
append()
方法,把新同学追加到 list 的末尾:>>> L = ['Adam', 'Lisa', 'Bart'] >>> L.append('Paul') >>> print L ['Adam', 'Lisa', 'Bart', 'Paul']
append()总是把新的元素添加到 list 的尾部。
如果 Paul 同学表示自己总是考满分,要求添加到第一的位置,怎么办?
方法是用list的
insert()
方法,它接受两个参数,第一个参数是索引号,第二个参数是待添加的新元素:>>> L = ['Adam', 'Lisa', 'Bart'] >>> L.insert(0, 'Paul') >>> print L ['Paul', 'Adam', 'Lisa', 'Bart']
L.insert(0, 'Paul') 的意思是,'Paul'将被添加到索引为 0 的位置上(也就是第一个),而原来索引为 0 的Adam同学,以及后面的所有同学,都自动向后移动一位。
查看全部 -
多返回值
返回值是一个tuple
查看全部 -
可变参数也不是很神秘,Python解释器会把传入的一组参数组装成一个tuple传递给可变参数,因此,在函数内部,直接把变量 args 看成一个 tuple 就好了。
查看全部 -
函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面
查看全部 -
函数的定义
1、定义一个函数使用def,
2、语法 :def 函数名(形参):
函数体
return 返回值
查看全部 -
函数调用
abs(params) 求绝对值
cmp(params1,params2) 两个数值进行比较,返回值 -1,0,1
int() 数据类型转换函数 ,把其他类型转换为int
str() 把其他类型转换为str
sum()函数接受一个list作为参数
查看全部 -
更新set
1、set存储的是一组不重复的无序元素,
2、更新set :一是把新的元素添加到set,二是把已有的元素从set中删除
3、添加元素 :add()
4、删除元素:remove()
注意:add()可以直接 添加元素,不管是否存在
remove()输出元素前需要判断,否则就会报错
查看全部 -
set遍历
使用 for
查看全部 -
set 特点
1、set的内部结构和dict很像,唯一区别是不存储value,执行速度快
2、set存储的元素和dict的key类似,必须是不可变对象。
3、set存储的元素是没有顺序的
查看全部 -
访问set
1、由于set存储属于无序存储,所以无法通过索引来访问
2、访问set中的某个元素实际上就是判断一个元素是否在set中
查看全部 -
set
1、dict的作用是建立一组key和一组value的映射关系,dict的key是不能重复的
2、set持有一系列元素,这一点和list很像,但是set的元素没有重复,而且是无序的
3、创建set :set()传入一个list,list的元素被用做set元素
4、如果我们传入的list有重复元素,会将重复元素去掉
查看全部
举报