-
如果想让一个函数能接受任意个参数,在可变参数前面加上‘*’ 在函数内部,直接把变量 args 看成一个 tuple 就好了。查看全部
-
由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面查看全部
-
zip()函数可以把两个 list 变成一个 list: >>> zip([10, 20, 30], ['A', 'B', 'C']) [(10, 'A'), (20, 'B'), (30, 'C')]查看全部
-
在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration)。 在Python中,迭代是通过 for ... in 来完成的,而很多语言比如C或者Java,迭代list是通过下标完成的。 因为 Python 的 for循环不仅可以用在list或tuple上,还可以作用在其他任何可迭代对象上。无论该集合是有序还是无序,我们用 for 循环总是可以依次取出集合的每一个元素。 注意: 集合是指包含一组元素的数据结构,我们已经介绍的包括: 1. 有序集合:list,tuple,str和unicode; 2. 无序集合:set 3. 无序集合并且具有 key-value 对:dict查看全部
-
使用递归函数需要注意防止栈溢出。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出.查看全部
-
Python的函数返回多值其实就是返回一个tuple查看全部
-
切片(Slice): L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素。 L[::2]第三个参数表示每N个取一个,上面的 L[::2] 会每两个元素取出一个来,也就是隔一个取一个。 把list换成tuple,切片操作完全相同,只是切片的结果也变成了tuple。查看全部
-
可以多重循环遍历 range(1,10)=1,2,3,4...9 range(10)=0,1,2,3...9 区别就是有没有0查看全部
-
交互式命令行通过 help(abs) 查看abs函数的帮助信息 可以直接从Python的官方网站查看文档: http://docs.python.org/2/library/functions.html abs(x)--绝对值 cmp(x, y)就需要两个参数,如果 x<y,返回 -1,如果 x==y,返回 0,如果 x>y,返回 1 int()把其他数据类型转换为整数 str()函数把其他类型转换成 str查看全部
-
s.add(4) s.remove(4)查看全部
-
添加元素时,用set的add(),如果添加的元素已经存在于set中,add()不会报错,但是不会加进去了 删除set中的元素时,用set的remove()方法,如果删除的元素不存在set中,remove()会报错查看全部
-
n.lower()不能用于赋值???查看全部
-
要解释上述结果,又涉及到 and 和 or 运算的一条重要法则:短路计算。 1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。 and运算只看False的值 ----- 2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。 OR运算只看True的值 ———————— 所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。查看全部
-
set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。 创建 set 的方式是调用 set() 并传入一个 list,list的元素将作为set的元素:s = set(['A', 'B', 'C']) set会自动去掉重复的元素查看全部
-
要把新同学'Paul'的成绩 72 加进去,用赋值语句:d['Paul'] = 72 如果 key 已经存在,则赋值会用新的 value 替换掉原来的 value查看全部
举报
0/150
提交
取消