JS程序员入门Python笔记-语法篇

2020-01-09  本文已影响0人  秋天下雨淋湿冬天

1、 语法改动

undefined      ==> None
else if   ==> elif
!         ==> not
array  ==> list
object ==> dict

2、和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数:

Python 2.7的整数除法运算结果仍是整数
>>> 10 / 3
3

但是,Python 3.x已经改进了整数的除法运算,“/”除将得到浮点数,“//”除才仍是整数:
>>> 10 / 3
3.3333333333333335
>>> 10 // 3
3

3、uple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了。

 t = ('Adam', 'Lisa', 'Bart')

创建tuple和创建list唯一不同之处是用( )替代了[ ]

4、Python代码的缩进规则。具有相同缩进的代码被视为代码块。
缩进请严格按照Python的习惯写法:4个空格,不要使用Tab,更不要混合Tab和空格,否则很容易造成因为缩进引起的语法错误。

5、由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面

6、对象快速取Value

d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 }
print d.values()  
# [85, 95, 59]
for key, value in d.items():
    print key, ':', value

7、列表生成式

[x * x for x in range(1, 11) if x % 2 == 0]
# [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
[m + n for m in 'ABC' for n in '123']
# ['A1', 'A2', 'A3', 'B1', 'B2', 'B3', 'C1', 'C2', 'C3']

8、匿名函数

#匿名函数 
lambda x: x * x
#匿名函数有个限制,就是只能有一个表达式,不写return,返回值就是该表达式的结果。

9、模块导入

// python
from math import pow, sin, log
// JS ES6
import { pow, sin, log } from math

10、init Class

class Person(object):
   def __init__(self, **kw): 
        for k, v in kw.iteritems():
            setattr(self, k, v)

11、python中访问限制

Python对属性权限的控制是通过属性名来实现的,
如果一个属性由双下划线开头(__),该属性就无法被外部访问

但是,如果一个属性以"__xxx__"的形式定义,
那它又可以被外部访问了,
以"__xxx__"定义的属性在Python的类中被称为特殊属性,
有很多预定义的特殊属性可以使用,
通常我们不要把普通属性用"__xxx__"定义。

以单下划线开头的属性"_xxx"虽然也可以被外部访问,
但是,按照习惯,他们不应该被外部访问。
上一篇下一篇

猜你喜欢

热点阅读