Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2137851
  • 博文数量: 103
  • 博客积分: 206
  • 博客等级: 入伍新兵
  • 技术积分: 1819
  • 用 户 组: 普通用户
  • 注册时间: 2012-09-12 10:24
个人简介

效字当先,以质为本。

文章分类
文章存档

2019年(2)

2018年(4)

2017年(7)

2016年(3)

2015年(14)

2014年(33)

2013年(31)

2012年(9)

分类: Python/Ruby

2012-10-31 09:59:13

1、Python提供了关键字,‘is’和'is not'来测试两个变量是否指向同一个对象,例如:
>>> x = 9
>>> y = x
>>> z = x 
那么:
>>> x is 9
True
>>> x is y
True
>>> y is z
True
>>> x is d
False
Python中一个变量能够有很多个名字,这些变量名我们把它成为变量的引用,他们都指向一个变量;

2、字符串必须以单引号或者双引号括起来,如果你不确定变量或者数据类型,就用解释器内置的函数type确认下:
如:
>>> type('hello')
>>> type(2)

3、函数的定义
函数的目的是把复杂的操作隐藏起来,来简化程序的结构;
如:
*>>>def add(p1,p2):
    print p1,"+",p2,"=" p1 + p2
>>>add(1,2)
1 + 2 = 3


*>>> def display(arg):
print arg
>>> a1=4
>>> a2=3
>>> display(a1+a2)
7
这里的p1和P2是函数的行参,而1和2是实参,就是实际要计算的数据;而且函数的行参和实参要一一对应,否则会抛出异常;如果我们不想按照函数定义时的顺序给出参数,那么调用时需要指出行参关
键字,带关键字的参数必须全部出现在右边,不带关键字的参数要一一对应。
比如:>>> foo(string="Hello", number=2)
HelloHello
5

4、函数缺省的参数
缺省参数简化和方便了函数的参数传递,缺省参数在函数创建时候已经给出了,例如:
>>> def salary(base=665, rate=0.012):
return base-base*rate
当然你定义了这个函数后,也可以给出不同于缺省值的值来,比如:
>>> salary(703, 0.011)
695.26700000000005

5、函数变量的范围
Python有一个主函数:_main_.其他的函数都是在这个函数内执行,或者说main调用你的程序及程序内的函数,你在任何函数外创造的变量都属于main;

6、函数的返回值
函数的返回值,形象的说是函数结的果实,有返回值的函数,称之为有结果的函数,例如我们要计算圆的面积
>>> import math
>>> def area(radius):
return math.pi * radius * 2
再如:
>>> def exam(age):
if (age>18):
return "your age is more than 18 old"
else:
return 1
>>> exam(9)
1
>>> exam(20)
'your age is more than 18 old'

7、数学函数模块
用import 引入需要的函数块,然后调用里面的函数。
如:
>>> import math
>>> print math.log()

8、Python的条件表达式
*布尔表达式
布尔表达式的值只有两个:真(1)假(0)
x==y
x!=y
x>y
x>=y
*逻辑操作符
Python有三种逻辑操作:and、or、not。这三个操作符的语义与其英语意义相同,分别是与、或、非。

9、条件语句
if (x>0):
    print x

def isParity(x):
if x%2 == 0: 
     print x, "是偶数" 
else:
     print x, "是奇数
“头”是if语句的开始,以冒号结束。在“头”里进行条件判断,以确定是否执
行if语句的“块”部分。在if语句的“块”的每一行,必须至少有一个空格的
缩进,缩进表示这一行是属于if语句的一部分。第一个没有缩进的语句标志着
if语句的结束。“块”内至少有一条语句,如果暂时还没有任何操作,你可以加
一条pass语句,它什么都不做,是一条空语句。
有时候,程序的分支不止两个,可能是三个,或更多。此时,就需要elif语
句引出更多的分支。elif语句是“else if”的缩写,每一个elif语句为程序引
出一个分支。elif语句的数量没有限制,但最后的分支必须是else语句,并且
只能是最后一个程序分支。
如:
def largeNumber(x, y):
if x
print x, "小于", y
elif x>y:
print x, "大于", y
else:
print x, "等于", y

10、return语句
return在函数中返回函数值。它的另一个作用是当函数内有错误发生时,终
止函数的运行,提前退出。例如:
import math
def printc(a, b):
if (a-b) < 0:
print "a小于b"
return
print math.sqrt(a - b)
当a小于b时,return终止函数的执行,下一条语句也不执行了。

11、break和continue语句
Break语句从最近的循环体中跳出,终止循环的执行。即在循环中若某一条
件满足了要求,想终止循环,就可以用break语句。Continue则是终止某一次循
环的执行,继续下一次的循环。它们一般用在while和for语句的循环中。
while i <=10:
if i==5:
i = i + 1
continue  ----继续下面的print i
print i
i = i + 1
上面这个例子的意思是:当i=5时的值,而打印其它值。也就是用continue终止
i=5时的循环,但其它的循环不受影响。下面的例子是当i=5时,用break停止
循环。
while i <=10:
if i==5:
break    ---直接终止了
print i
i = i + 1


11、如何运行python文件;
在编辑器里面先写好命令如:
def fun():
print "it's me"

def add(p1,p2):
print p1,'+',p2,'=',p1 + p2

if __name__ == '__main__':
fun()
add(1,2)
保存为.py文件,运行就可以了。
这里解释下为什么要用if__name__=='__main__':
一个.py文件,如果是自身在运行,那么他的__name__值就是"__main__"; 如果它是被别的程序导入的(作为一个模块),比如: import re 那么,他的__name__就不是"__main__"了。 所以,在.py文件中使用这个条件语句,可以使这个条件语句块中的命令只在它独立运行时才执行另外一个比较容易懂的解释: __name__是指示当前py文件调用方式的方法。如果它等于"__main__"就表示是直接执行,如果不是,则用来被别的文件调用,这个时候if就为False,那么它就不会执行最外层的代码了。 比如你有个Python文件里面 def XXXX(): #body print "asdf" 这样的话,就算是别的地方导入这个文件,要调用这个XXXX函数,也会执行print "asdf",因为他是最外层代码,或者叫做全局代码。但是往往我们希望只有我在执行这个文件的时候才运行一些代码,不是的话(也就是被调用的话)那就不执行这些代码,所以一般改为 def XXXX(): #body if __name__="__main__": print "asdf"用自己的话说就是,如果你写一个函数的目的是为了方便些程序,只是被调用的,那么就不用写这条if语句,但是如果你想单独执行此文件,那么就写if语句。12、
阅读(2386) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~