本文正在参加「Python主题月」,详情查看 活动链接
变量是什么
变量:记录事物变化的状态。
类似数学中的解方程,最后求得x=1,意思就是x代表1。
为了让计算机具备人的某项功能,能更好的完成人类下达的任务,由此诞生了变量。
变量怎么声明
# 变量名 赋值符号 变量值
name = "Tom"
变量的命名规范
-
为了提高自己在程序员中的地位,切记不可用拼音。
-
为了提高自己在程序员中的地位,切忌不可用中文。
-
不可使用Python中的关键字。
-
不可数字开头。
常用的命名风格
-
纯小写+数字+下划线。变量名一般会采用这种方式。
-
驼峰体。第一个单词小写,其余单词首字母大写。
-
纯大写。这一般是用来定义程序中的常量。注意,这是约定俗成的规范,不是Python本身的语法。
变量的特性
每个变量都有一个在内存中的地址,称为:id。
每个变量在被赋值后都有不同类型,使用type内置方法可查看。
判断两个变量是否相等,可以使用is和==。
-
is:判断两个变量是否属于同一内存空间,即id是否相等。
-
==:仅仅判断两个变量的值是否相等。
>>> x = 1
>>> y = 1
>>> x is y
True
>>> x == y
True
>>> q = 666
>>> p = 666
>>> q is p
False
>>> q == p
True
为什么变量等于1的时候,is判断相等呢?而变量等于666的时候,is判断不相等呢?
再看一段代码:
>>> def jj():
... j = 666
... k = 666
... return j is k
...
>>> jj()
True
>>>
总结一下:
小整数池[-5,256]是全局解释器范围内被重复使用,永远不会被GC回收。
同一个代码块中的不可变对象,只要值是相等的就不会重复创建新的对象。
Python的关键字
总计35个关键字,列表如下:
- class
定义类
- def
用来定义方法
- import
包导入
- return
用来跳出函数,可同时返回一个值
- pass
类或者方法具体实现未想好时可以用pass暂代,避免报错
- lambda
匿名函数,不想给函数起名字,如:lambda x,y: x*y
- yield
def fab(max):
a,b = 0,1
while a < max:
yield a
a, b = b, a+b
for i in fab(20):
print i,",",
结果: 0 , 1 , 1 , 2 , 3 , 5 , 8 , 13 ,
- global
定义全局变量,要给全局变量赋值,就需要加上global
- from
导入模块,import 或者 from...import
- if
如果
- elif
再如果
- else
不然
if a > b:
print"a > belif a < b:
print"a < b"else:
print"a = b"
- for
for...in...一起使用,在一序列的对象上递归,遍历队列中的每个项目
- in
查找类别中是否包含某个元素,或者字符串a是否包含字符串b,不可查找list1是否包含list2
- None
空,无,假
- while
语序重复执行一块语句,一般无限循环的情况使用它
-
with
-
as
with...as 代替传统的try...finally语法,with所求对象必须有一个__enter__() 和一个__exit__()方法
-
False
-
True
-
or
逻辑或
- and
逻辑与
- not
逻辑非
- continue
跳过continue后面循环块中的语句,继续进行下一轮的循环
- break
终止循环
-
try
-
except
-
finally
try:
f = open('xxx')
except:
print'fail to open'
exit(-1)
try:
do something
except:
do something
finally:
f.close()
- raise
可以显示的抛出异常,一旦执行raise语句,后面的代码就不执行了
-
async
-
await
-
del
用于list列表操作,删除一个或者连续几个元素
- nonlocal
nonlocal是Python3新增的关键字,用于告知Python后面的变量定义在其他地方,不要在本函数中定义出一个新的局部变量。
- is
Python中的对象包含三要素:id、type、value。
id 用来唯一标识一个对象,type标识对象的类型,value是对象的值。
is用来判断对象a是否是对象b,用id来判断。
== 判断对象的value是否相等。
- assert
断言,如果断言出错则抛出异常 AssertionError