python一共有多少语句

if语句

for语句

while语句

try语句

class语句

def语句

del 语句

pass语句

assert语句

with语句

yield语句

raise语句

import语句

 

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

 

通过使用 if...elif...else 语句判断数字是正数、负数或零:

 

num = float(input("输入一个数字: "))
if num > 0:
    print("正数")
elif num == 0:
    print("零")
else:
    print("负数")

 

执行以上代码输出结果为:

 

输入一个数字: -7

负数

 

也可以使用内嵌 if 语句来实现:

 

# 内嵌 if 语句
num = float(input("输入一个数字: "))
if num > 0:
    if num == 0:
        print("零")
    else:
        print("正数")
else:
    print("负数")

 

执行以上代码输出结果为:

 

输入一个数字: 6

正数

 

 

 

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

 

for循环的一般格式如下:

 

for <variable>(变量) in <sequence>(序列):
    <statements>(说明)
else:
    <statements>(说明)

 

实例:

 

sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:
    print(site)

 

以上代码执行输出结果为:

 

Baidu

Google

Runoob

Taobao

 

整数范围值可以配合 range() 函数使用:

 

#  1 到 5 的所有数字:
for number in range(1, 6):
    print(number)

 

以上代码执行输出结果为:

 

1

2

3

4

5

 

for...else语法格式如下:

 

for x in range(6):
  print(x)
else:
  print("Finally finished!")

 

当循环执行完毕(即遍历完 iterable 中的所有元素)后,会执行 else 子句中的代码。

 

实例

for x in range(6):
  print(x)
else:
  print("Finally finished!")

 

执行脚本后,输出结果为:

 

0

1

2

3

4

5

Finally finished!

 

如果在循环过程中遇到了 break 语句,则会中断循环,此时不会执行 else 子句。

 

sites = ["Baidu", "Google","Runoob","Taobao"]
for site in sites:
    if site == "Runoob":
        print("菜鸟教程!")
        break
    print("循环数据 " + site)
else:
    print("没有循环数据!")
print("完成循环!")

 

执行脚本后,在循环到 "Runoob"时会跳出循环体:

 

循环数据 Baidu

循环数据 Google

菜鸟教程!

完成循环!

 

  • while语句当条件为真时,循环运行语句块。

 

Python while 语句的一般形式:

 

while 判断条件(condition):
    执行语句(statements)……

 

以下实例使用了 while 来计算 1 100 的总和:

 

n = 100

sum = 0
counter = 1
while counter <= n:
    sum = sum + counter
    counter += 1

print("1 到 %d 之和为: %d" % (n, sum))

 

执行结果如下:

 

1 100 之和为: 5050

 

可以通过设置条件表达式永远不为 false 来实现无限循环,实例如下:

 

var = 1
while var == 1:  # 表达式永远为 true
    num = int(input("输入一个数字  :"))
    print("你输入的数字是: ", num)

print("Good bye!")

 

执行以上脚本,输出结果如下:

 

输入一个数字  :3

你输入的数字是:  3

输入一个数字  :

 

while 后面的条件语句为 false 时,则执行 else 的语句块。

 

语法格式如下:

 

while <expr>:
    <statement(s)>
else:
    <additional_statement(s)>

 

expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)

 

循环输出数字,并判断大小:

 

count = 0
while count < 5:
   print (count, " 小于 5")
   count = count + 1
else:
   print (count, " 大于或等于 5")

 

执行以上脚本,输出结果如下:

 

0  小于 5

1  小于 5

2  小于 5

3  小于 5

4  小于 5

5  大于或等于 5

 

类似 if 语句的语法,如果你的 while 循环体中只有一条语句,你可以将该语句与 while 写在同一行中, 如下所示:

 

flag = 1
while (flag): print('欢迎访问菜鸟教程!')
print("Good bye!")

 

执行以上脚本,输出结果如下:

 

欢迎访问菜鸟教程!

欢迎访问菜鸟教程!

欢迎访问菜鸟教程!

欢迎访问菜鸟教程!

欢迎访问菜鸟教程!

……

 

  • try语句except, finally, else配合使用处理在程序运行中出现的异常情况。

 

简单的try....except...else的语法:

 

try:
<语句>        #运行别的代码
except <名字>:
<语句>        #如果在try部份引发了'name'异常
except <名字>,<数据>:
<语句>        #如果引发了'name'异常,获得附加的数据
else:
<语句>        #如果没有异常发生

 

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

 

如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。

 

如果在try后的语句里发生了异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印默认的出错信息)。

 

如果在try子句执行时没有发生异常,python将执行else语句后的语句(如果有else的话),然后控制流通过整个try语句。

 

打开一个文件,在该文件中的内容写入内容,且并未发生异常:

 

try:
    fh = open("testfile", "w")
    fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
    print "Error: 没有找到文件或读取文件失败"
else:
    print "内容写入文件成功"
    fh.close()

 

以上程序输出结果:

 

$ python test.py

内容写入文件成功

$ cat testfile       # 查看写入的内容

这是一个测试文件,用于测试异常!!

 

打开一个文件,在该文件中的内容写入内容,但文件没有写入权限,发生了异常:

 

try:
    fh = open("testfile", "w")
    fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
    print "Error: 没有找到文件或读取文件失败"
else:
    print "内容写入文件成功"
    fh.close()

 

以上程序输出结果:

 

chmod -w testfile

 

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

 

try:
<语句>
finally:
<语句>    #退出try时总会执行
raise

 

实例:

 

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

 

  • class语句用于定义类型。

 

使用 class 语句来创建一个新类,class 之后为类的名称并以冒号结尾:

 

class ClassName:
   '类的帮助信息'   #类文档字符串
   class_suite  #类体

 

类的帮助信息可以通过ClassName.__doc__查看。

 

class_suite 由类成员,方法,数据属性组成。

 

class Employee:
    '所有员工的基类'
    empCount = 0

    def __init__(self, name, salary):
        self.name = name
        self.salary = salary
        Employee.empCount += 1

    def displayCount(self):
        print
        "Total Employee %d" % Employee.empCount

    def displayEmployee(self):
        print
        "Name : ", self.name, ", Salary: ", self.salary

 

empCount 变量是一个类变量,它的值将在这个类的所有实例之间共享。你可以在内部类或外部类使用 Employee.empCount 访问。

 

第一种方法__init__()方法是一种特殊的方法,被称为类的构造函数或初始化方法,当创建了这个类的实例时就会调用该方法

 

self 代表类的实例,self 在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数。

 

  • def语句用于定义函数和类型的方法。

 

实例:

 

def hello():
    print("Hi")
    print("How are you?")
#调用函数
hello()
        "Total Employee %d" % Employee.empCount

    def displayEmployee(self):
        print
        "Name : ", self.name, ", Salary: ", self.salary

 

效果:

 

Hi

How are you?

 

  • del 语句使用 del 语句可以从一个列表中根据索引来删除一个元素,而不是值来删除元素。这与使用 pop() 返回一个值不同。可以用 del 语句从列表中删除一个切割,或清空整个列表(我们以前介绍的方法是给该切割赋一个空列表)。

 

例如:

 

>>> a = [-1, 1, 66.25, 333, 333, 1234.5]
>>> del a[0]
>>> a
[1, 66.25, 333, 333, 1234.5]
>>> del a[2:4]
>>> a
[1, 66.25, 1234.5]
>>> del a[:]
>>> a
[]

 

 

 

  • pass语句表示此行为空,不运行任何操作,不做任何事情,一般用做占位语句

 

测试实例:

 

for letter in 'Python':
    if letter == 'h':
        pass
        print('这是 pass 块')
    print('当前字母 :', letter)

print("Good bye!")

 

以上实例执行结果:

 

当前字母 : P

当前字母 : y

当前字母 : t

这是 pass

当前字母 : h

当前字母 : o

当前字母 : n

Good bye!

 

  • assert语句用于程序调适阶段时测试运行条件是否满足。

 

assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。

 

断言可以在条件不满足程序运行的情况下直接返回错误,而不必等待程序运行后出现崩溃的情况,例如我们的代码只能在 Linux 系统下运行,可以先判断当前系统是否符合条件。

 

语法格式如下:

 

assert expression
#等价于:
if not expression:
    raise AssertionError

 

assert 后面也可以紧跟参数:

 

assert expression [, arguments]
# 等价于:

if not expression:
    raise AssertionError(arguments)

 

  • with语句with 语句用于异常处理,封装了 tryexceptfinally 编码范式,提高了易用性。

 

with 语句使代码更清晰、更具可读性, 它简化了文件流等公共资源的管理。

 

在处理文件对象时使用 with 关键字是一种很好的做法。

 

实例:

 

with open('./test_runoob.txt', 'w') as file:
    file.write('hello world !')

 

 

 

  • yield语句在迭代器函数内使用,用于返回一个元素,带有 yield 的函数在 Python 中被称之为 generator(生成器)

 

def foo():
    print("starting...")
    while True:
        res = yield 4
        print("res:",res)
g = foo()
print(next(g))
print("*"*20)
print(next(g))

 

以上实例执行结果:

 

starting...

4

********************

res: None

4

 

  • raise语句raise关键字用于引发异常,可以定义引发哪种错误,以及向用户显示错误信息。

 

  • import语句导入一个模块。

 

posted @ 2023-03-20 20:52  真紫艳星光  阅读(46)  评论(0编辑  收藏  举报