python 学习笔记 四 条件, 循环以及其他

逗号输出

print语句可以用来打印由逗号隔开的多个值, 如果语句以逗号结尾, 后面的print语句会在同一行继续打印. 如果想同时输出文本和变量而又步想使用格式化, 这个特性就非常有用了.

>>> age = 42

>>> print 'Age:', age

>>> Age: 42

每个参数间会自动加上空格.

模块导入

  1.从模块导入函数可以使用:

import module

或者

from module import function

或者

from module import function1, function2, ...

或者

from module import *

只有确定要从模块导入所有功能时草应该使用最后一个.

  2.若导入的俩个(或多个)模块具有都具有一个open函数, 这时我们可以使用第一种方式导入, 然后这样调用函数:

module1.open()

module2.open()

或者为函数起个别名:

from module import function_name as new_name

赋值语句的技巧

  1.同时进行多个赋值

>>> x, y, z = 1, 2, 3

>>> print x, y, z

1 2 3

  2.交换俩个变量

>>> x, y = y, x

>>> print x, y, z

2 1 3

事实上, 上面所做的事情叫序列解包(sequence unpacking)---将多个值的序列解开, 然后放到变量的序列中:

>>> values = 1, 2, 3

>>> values

(1, 2, 3)

>>> x, y, z = values

>>> print x, y, z

1 2 3

这个特性在函数或方法返回元组(或其他可迭代对象)时非常有用.

条件语句

条件测试为假的情况:

False  None  0  " "  ( )  [ ]  { }

从下面的代码可以看出条件语句的一般格式:

num = input('Eter a number: ')
if num > 0:
    print 'The number is positive'
elif num < 0:
    print 'The number is negative'
else:
    print 'The number is zero'

布尔运算符

python中用and, or, not表示与或非, 相当于c语言中的&& || !.

断言

让程序在错误条件出现是崩溃, 关键词assert

assert condtion

  ...

循环

while循环, 看例子:

x = 1
sum = 0
while x <= 100:
    sum += x

for循环:

for num in range(0, 10):    # 生成一个0-9的列表
    print num

 

python的循环中的是可以添加else语句, 看这个例子:

for num in range (0, 10):
    if num == 5:
        print num
        break
else:
    print "Can't find it!"

else语句仅在没有调用break时执行, 也就是说for循环正常结束.

列表推导式(list comprehension)

利用其他列表创建新的列表, 例:

>>> [x*x for x in range(1, 5)]

[1, 3, 9, 16]

列表由range(1, 5)中每个数的平方生成.

pass, del, exec和eval

  1.pass

pass语句上面也不做, 可以在代码中做占位符使用, 因为在Python中空代码块是非法的.

  2.del

del不仅会移除一个对象的引用, 也会移除那个名字本身.

>>> x = 1

>>> del x

>>> x  # NameError: 'x' is not defined

但这里并没有删除值, 例如:

>>> x =["Hello", "world"]

>>> y = x

>>> y[1] = "Python"

>>> x

['Hello', 'Python']

>>> del x

>>> y

['Hello', 'Python']

x和y指向同一个列表, 但删除x并步影响y, 这是因为删除的只是名称, 而不是列表本身(值). 事实上, 在Python中是没有办法删除值的, 某个值不再使用, Python解释器会负责内存的回收.

  3.exec

执行一个字符串的语句

  4.eval

计算字符串形式书写的python表达式.

posted @ 2014-05-22 15:00  TonyZheng  阅读(169)  评论(0编辑  收藏  举报