eval函数就是实现list、dict、tuple与str之间的转化,这在爬虫处理数据时十分有用。
python
# 字符串转换成列表 a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]" print(type(a)) b = eval(a) print(b)
# 字符串转换成字典 a = "{1: 'a', 2: 'b'}" print(type(a)) b = eval(a) print(type(b)) print(b)
# 字符串转换成元组 a = "([1,2], [3,4], [5,6], [7,8], (9,0))" print(type(a)) b=eval(a) print(type(b)) print(b)
python2中用print x,的方法控制不换行,而在python3中print变成了一个函数以后就行不通了,因此变成了print (x,end=' ')express
单引号中能够加入其余内容在每一个单个数据后都有显示。数组
一行过长的语句可使用反斜杠分解成几行函数
有两种例外状况能够不用反斜杠也能够跨行。在使用闭合操做符时,例如小括号、中括号、大括号时能够多行书写。另外就是三引号包括下的字符串也能够跨行书写。code
分号容许将多个语句写在同一行上。例子:import sys;x = 'foo'; sys.stdout.write(x + '\n'),这个输出的结果是fooblog
学过C语言的都知道else不能脱离其余语句单独存在,在Python中else居然和for联用,这是什么骚操做?咱们来作个实验:
字符串
for i in range(2): print(i) else: print('over!')
结果是:原型
0 1 over
能够看到for语句执行完以后else里的内容也被执行,然而继续作实验:it
for i in range(2): break else: print("Over!")
结果:io
能够看到的是当for循环里执行了break的状况下else里的东西就也不会被执行了,这有什么用呢??例以下面这段代码:
for i in range(5): if (a[i+1]>a[i]): break else: return
当这串数组原本就是有序的时,for循环里的break不会被执行,直接return,达到了若是有序就不进行操做的目的,若是执行到了break则说明它不是按有序排列的,则再跳过else执行后续代码。有用!
print(ord('a'))#参数为单个字符 print(chr(97))#参数为ASCII码值 #函数能够嵌套使用,例如大小写转换: print(chr(ord('a')-32)) #还能够实现字符型数字和int型数字转换: print(chr(ord('1')+1))
以上代码结果为:
97 a A 2
list_1 = ['a','b','c'] list_2 = list(map(ord,list_1)) print(list_2)#[97,98,99] #map()函数的结果是一个新的列表而不是修改了原来的列表 x = list_2 is list_1 print(x)#False
看以上代码,map()的原型是map(function, iterable, …),它的返回结果是一个列表。它能够改变原来列表的每个值返回一个新的列表,只须要传入函数便可。
list_1 = ['a','b','c'] list_2 = list(map(ord,list_1)) print(list_2)#[97,98,99] x = list_2 is list_1 print(x)#False list_3 = ['d','e','f'] # 列表转成字符串 # "".join(list) ""中是用来添加字符的,而后用添加的字符将列表中的元素链接成字符串 str3 = ",".join(list_3) print(str3)#d,e,f
lambda函数有以下特性:
1.lambda函数是匿名的:所谓匿名函数,通俗地说就是没有名字的函数。lambda函数没有名字。
2.lambda函数有输入和输出:输入是传入到参数列表argument_list的值,输出是根据表达式expression计算获得的值。
3.lambda函数通常功能简单:单行expression决定了lambda函数不可能完成复杂的逻辑,只能完成很是简单的功能。因为 其实现的功能一目了然,甚至不须要专门的名字来讲明。
示例:
# lanmbda表达式 add = lambda x, y: x+y print(add(1, 2))
#结果: 3
和map()连用很好用:
map(lambda x: x+1, [1, 2,3])
还能够将lambda函数做为参数传递给其余函数,相似sorted函数和filter函数.