一.Python语法
学习一门语言最基础的就是它的语法了,语法就像是砖,有了它才能盖出高楼大厦。我的环境是Mac+iTerm。Mac自带python2.7,在终端中输入python就可以开始体验了。
写python代码时的几点注意事项:
- python语句不用以‘;’结尾,当然加上也不会报错
- python是以缩进来区分代码块的,类似其他语言的{}
python2.7对于中文编码的支持很好,最后在代码开头加上这样一句话
#coding=utf-8 或者 #-*- coding:utf-8 -*-
1.1 变量
python和C,java不一样,它不需要提前定义类型,想用就定义,不想用会自动被回收,根本不需要你去关心它。
1.1.1 局部变量
局部变量只在某一范围内生效,如一个函数中。
和其他语言不同,即使在if,for语句中声明的变量,在if,for语句之外也可以用,如:
if True:
i = 1
print i
在JAVA中可能就报错了,但是在python中的输出是:
>> 1
1.1.2 全局变量
全局变量是指在整个程序运行期间都生效的变量,一般在程序开头大写定义,在函数中定义时则需要使用关键字global
“`
#coding=utf-8
GLOBAL_VAR = 1 #全局变量1
def test():
return GLOBAL_VAR
def setGlobalVar():
global GLOBAL_VAR1
GLOBAL_VAR1= 2
def getGlobalVar():
return GLOBAL_VAR1
if name == ‘main‘:
print “[+] GLOBAL_VAR:%d” % test()
setGlobalVar()
print “[+] GLOBAL_VAR1:%d” % getGlobalVar()
“`
结果:
[+] GLOBAL_VAR:1
[+] GLOBAL_VAR1:2
1.1.3 注意事项
1.函数内部的变量名如果第一次出现,且出现在=前面,即被视为定义一个局部变量,不管全局域中有没有用到该变量名,函数中使用的将是局部变量
2.函数内部的变量名如果第一次出现,且出现在=后面,且该变量在全局域中已定义,则这里将引用全局变量,如果该变量在全局域中没有定义,当然会出现“变量未定义”的错误
3.函数中使用某个变量时,该变量名既有全局变量也有同名的局部变量,则会使用局部变量
这个里面会有点绕,但是你自己去亲自写一遍代码就知道两者的区别了。
1.2 运算符
运算符就比较简单了,常用的就有:算术运算符,比较运算符,逻辑运算符
1.2.1算术运算符
加(+) ,减(-) ,乘(*) ,除(/),求余(%),+=,-=,,/=等等。注意:python没有++,–这种形式
>>> i = 0
>>> i++
File "<stdin>", line 1
i++
^
SyntaxError: invalid syntax
1.2.2 比较运算符
大于(>),小于(<),等于(==),不等于(!=)等等.
1.2.3 逻辑运算符
and or not 与或非
1.3 流程控制
1.3.1 条件语句
python没有switch关键字,所以只能通过if else 控制条件,常用的有两种:
1.只有两种情况,非此即彼
if 判断句:
语句1
else:
语句2
2.有多种情况,类似java的switch
if 判断条件1:
执行语句1……
elif 判断条件2:
执行语句2……
elif 判断条件3:
执行语句3……
else:
执行语句4……
1.3.2 循环语句
多次执行一个语句,常用的也有两种:while循环和for循环
1.while循环
while 判断条件:
执行语句……
例如:
i = 0
while(i<5):
print i
i = i+ 1
print 'done..'
结果:
0
1
2
3
4
done..
2.for循环
for iterating_var in sequence:
statements(s)
如果想跳出循环可以使用break,继续循环可以使用continue。