美文网首页PythonStuding
Python语句和控制流

Python语句和控制流

作者: 晓莫莫 | 来源:发表于2017-04-24 13:18 被阅读0次

1.if语句

当条件成立时执行语句块,经常与else、elif(相当于else if)配合使用

if i == 1:
    print("等于1")
elif i > 1:
    print("大于1")
else:
    print("小于1")

2.for语句

遍历列表、字符串、字典、集合等迭代器,依次处理迭代器中的每个元素

下面的例子就是求50-100之间的质数(math.sqrt是开方)

import math

for i in range(50, 100 + 1):
    for j in range(2, int(math.sqrt(i)) + 1):
        if i % j == 0:
            break
    else:
        print i

顺便提一下range()函数。

range([start,] stop [, step])

start  可选参数,起始数

stop   终止数,如果 range 只有一个参数x,则产生一个包含 0 至 x-1 的整数列表

step   可选参数,步长

3.while语句

当条件为真时,执行循环语句块,如下例子

count = 0
while (count < 9):
   print 'The count is:', count
   count = count + 1

print "Good bye!"

4.try语句

try的工作原理是,当开始一个try语句后,python就在当前程序的上下文中作标记,这样当异常出现时就可以回到这里,try子句先执行,接下来会发生什么依赖于执行时是否出现异常.

下面是简单的例子:

import sys
try:
    s = raw_input('Enter something --> ')  #可能得到异常的语句
except EOFError:       #锁定是哪种异常
    print 'ERROR INPUT !'   #出现异常的处理方法
    sys.exit()
print s

try-finally 语句无论是否发生异常都将执行最后的代码。

try:
    fh = open("testfile", "w")
    fh.write("这是一个测试文件,用于测试异常!!")
finally:
    print "Error: 没有找到文件或读取文件失败"

5.CLASS语句

用于定义类,下面是一个例子

首先第一点,你会发现Class的定义中有一个括号,这是体现继承的地方。 Java用extends,C#、C++用冒号(:),Python则用括号了。从括号中包含着两个值,聪明的你一定可以发现:Python支持多重继承;

第二点,init是Class中的构造函数,两种不同形式的构造函数体现了Python支持函数重载。在构造函数中,有一个特别的参数self,其含义与我们在Java和C#中常见的this是一样的。

class GrandPa:
    def __init__(self):
         print('I\'m GrandPa')


class Father(GrandPa):
     def __init__(self):
         print('I\'m Father!')

class Son(Father):
     """A simple example class"""
     i = 12345
     def __init__(self):
         print('这是构造函数,son')
     def sayHello(self):
         return 'hello world'

if __name__ == '__main__':
     son = Son()
     # 类型帮助信息
     print('类型帮助信息: ',Son.__doc__)
     #类型名称
     print('类型名称:',Son.__name__)
     #类型所继承的基类
     print('类型所继承的基类:',Son.__bases__)
     #类型字典
     print('类型字典:',Son.__dict__)
     #类型所在模块
     print('类型所在模块:',Son.__module__)
     #实例类型
     print('实例类型:',Son().__class__)

6.def语句

用于定义函数和类型的方法

def hello():
    print 'hello python!'

7.pass语句

表示此行为空,不做任何操作,用处就是保持语义、格式的完整性。

if i == 1:
    pass
else:
    pass

8.assert语句

assert语句是一种插入调试断点到程序的一种便捷的方式,当assert语句失败的时候,会引发AssertionError。

assert使用起来还是很方便的,可以避免不必要的未知错误。

def isPrime(n):
    """This function return a number is a prime or not"""
    assert n >= 2
    from math import sqrt
    for i in range(2, int(sqrt(n))+1):
        if n % i == 0:
            return False
    return True

9.with语句

有一些任务,可能事先需要设置,事后做清理工作。对于这种场景,Python的with语句提供了一种非常方便的处理方式。一个很好的例子是文件处理,你需要获取一个文件句柄,从文件中读取数据,然后关闭文件句柄。

不使用with语句如下这样写:

file = open("/tmp/foo.txt")
try:
    data = file.read()
finally:
    file.close()

使用with之后,可以这样写:

with open("/tmp/foo.txt")
 as file:
    data = file.read()

Python的with语句是提供一个有效的机制,让代码更简练,同时在异常产生时,清理工作更简单。

10.yield语句

在迭代器函数内使用,用于返回一个元素。自从Python2.5之后,这个语句变成了一个运算符。

yield和return的区别。yield可以向下运行。而return返回后这个函数余下的部分就不能执行了。

def gen():
        print 'enter'
        yield 1
        print 'next'
        return
        print 'next 2'
        yield 2
        print 'next 3'
for i in gen():
        print i

11.raise语句

在Python中,要想引发异常,最简单的形式就是输入关键字raise,后跟要引发的异常的名称。异常名称标识出具体的类: Python异常处理是那些类的对象。执行raise语句时,Python会创建指定的异常类的一个对象。raise语句还可指定对异常对象进行初始化的参数。为此,请在异常类的名称后添加一个逗号以及指定的参数(或者由参数构成的一个元组)。

def functionName( level ):
    if level < 1:
        raise Exception("Invalid level!", level)
        # 触发异常后,后面的代码就不会再执行

12.import语句

导入一个模块,全部导入,示例如下:

import codecs
import ConfigParser
import MySQLdb
import sys

13.from import语句

导入一个模块的某些成员,如果你想在程序中用argv代表sys.argv,可以使用 from import语句,在使用的时候建议尽量不需要用from import语句,这样可以使你的程序更加易读,并且没有名字的冲突

from decompile import WjsDecompile
from sys import *

14.import as语句

as后面的内容表示别名,如下面的示例,在使用此模块的功能的时候则需要使用别名,如system.argv

import sys as system

15.in语句

判断一个对象是否在一个字符串、列表、元组

for i in range(1, 5):
    print(i)
else:
    print('for循环结束')

相对的用法有not in,用法相同,含义相反;

相关文章

  • Python | 常用的控制流语句

    一、控制流语句介绍 了解什么是控制流语句以及Python常用的两种控制流语句。 1.控制流语句 控制流语句即用来实...

  • Python语句和控制流

    1.if语句 当条件成立时执行语句块,经常与else、elif(相当于else if)配合使用 2.for语句 遍...

  • Python数据分析基础----第五天

    控制流 Python中提供了若干种控制流元素,包括 if - elif - else 语句、for 循环、ra...

  • Python浅薄的基础小结下

    控制流语句和函数function Python条件语句是通过一条或多条语句的执行结果(True或者False)来决...

  • 3. Python的控制流

    在Python中有三种控制流语句——if、for和while。 if if语句用来检验一个条件,如果条件为真,我们...

  • Swift - 控制流

    控制流语句,用于控制程序正在执行的流程。Swift中,控制流语句主要为条件语句和循环语句。 条件语句 if条件语句...

  • Python学习笔记之with as用法

    with as就是个python控制流语句,比如if、while 其结构为: with expression as...

  • python 基础 - 循环语句

    python 循环语句 Python中的循环语句有 for 和 while。Python循环语句的控制结构图如下所...

  • 6-Swift之控制流

    1、控制流简介 控制流是控制语句、语句块、存储过程的执行分流。 2、OC 中有哪些控制流 1.if 语句 / ...

  • Python(三)控制流语句

    程序设计的 三种基本结构:顺序结构、选择结构、循环结构 顺序结构:是一种线性、有序的结构,依次执行各语句模块 选择...

网友评论

    本文标题:Python语句和控制流

    本文链接:https://www.haomeiwen.com/subject/gmfpzttx.html