java转python记录 二

字符串是序列的一种

格式化字符串    ‘%%50用户  name: %s age : %d salary : %.2f’% ('张三',18,1000.0)

 %%  字符串的使用

格式化字符串的规则:自行百度

字符串join可以将序列用连接符拼接成新的字符串

replace 替换

maketrans 单字符替换

locale模块

字典类似map用  { }  表示,类似于json数据格式

"My name is %(name)s" % {name:"帅哥"} 字符串替换中的字典使用

浅复制和深复制 dict.copy() 浅复制只能复制dict中的对象引用,copy.deepcopy(dict)深复制能复制dict的所有内容

{}.fromkeys([1,2,3,4]) => {1:None,2:None,3:None,4:None} fromkeys能返回对应的key,对应的值为None的字典

dict.get(key)和dict[key]的区别,dict[key]取值如果此key不存在字典中会抛出异常

dict.has_key(key)    判断dict中是否有key (python3中不包含此函数)

dict.items()    将dict中的键值对已[(k1,v1),(k2,v2),(k3,v3)]的形式返回

dict.iteritems()    返回一个迭代器对象

                                                                                                                                                                          

序列解包

x,y,z = 1,2,3    1,2,3返回的其实是一个(1,2,3)元组,元组被解包,给了xyz进行了赋值

x,y = y,x    利用序列解包实现值的交换

链式赋值

x = y = func()    类似于    y = func()   , x = y

增量赋值   

 x = 'ab'    y = 'cd'    x += y   x此时等于‘abcd’    

                                 x *= 2   x此时等于‘abcdabcd’  

False    可以有哪些值表示    False,None,0,“”,(),[],{}  都可以表示为False

if   else    elif   不一样的地方在elif 类似java中的else if

if    语句后加的是逻辑表达式

x is y     表示x和y是同一个对象(地址比较)要避免使用is来比较数值和字符串等不可变的值,容易出事

x == y   表示x的值和y的值是同一个值(值比较)

locale模块    本地话的意思

10<x<15   连接比较符    java中不支持

循环   while和for

for x in numbers:pass 

xrange和range函数的区别    range一次创建整个序列,xrange每次只产生一个数

zip函数   a=(1,2,3)   b=('a','b','c')     zip(a,b)返回值[(1,'a'),(2,'b'),(3,'c')] 最短用完为止,如a=(1,2,3,4,5)结果仍不变

enumerate函数使用   enumerate(seq) 会返回(index,value)的键值对

列表推导式

[x*x for x inrange(100) if x%2==0]   1.先执行for x in range(100)获得一个值  

                                                          2.执行if x%2==0判断值满足条件与否(可以省略)  

                                                          3.执行x*x 可以是别的算法

exec     exec 'print "hello"' 执行print "hello"语句    

exec "x=10" in myScope     myScope是作用域     下面使用只能用myScope.x

 scope={x:10,y:2}    ret = eval('x*y',scope)    eval会返回值,传参也可以用scope传,需要补充   

上一篇        下一篇

猜你喜欢

转载自blog.csdn.net/livelse/article/details/80731853