python关键字⽤法与⽰例
1.and ;or ; not:
and为与运算, a and b  即a 与b都是True ==》a and b才为True
or为或运算,a or b即a,b内只要任意⼀个为True则a or b为True
not 为⾮运算 当a表达式为True时,not a 表达式为False ,反之亦然
2.with expresion as variable:、为⼀个类定义了_enter_ 及_exit_函数。将expresion返回值赋值给variable ,随后执⾏:后⾯的with_block操作,执⾏完后⾃动exit函数。等价于
try:
 enter函数
 with_clock函数
finall:
 exit函数
实例如下:#打开xxx⽂件,并将其赋值给file,即file为⼀个xxx⽂件的打开对象。然后输出⽂件内容后,执⾏exit关闭⽂件。
with open(“xxx”,‘a+’) as file:
 ad())
3.break 与continue:
两者都⽤于while循环。break终⽌整个while循环,⽽continue则跳过当前轮次循环,然后继续下⼀次循环。⽐如求100以内奇数的和:sum=0
i=0
while True:
 i++
 if i > 100: #超过100的数,则终⽌循环
  break
 elif i%2 ==0: #若为奇数,则跳过
  continue
 else:
  sum+=i
4.assert: 断⾔某⼀判断,若正确,则继续执⾏,否则报错assertion error,并终⽌程序。
i = 1
assert i >0 #正常执⾏
assert i != 1 #程序报错终⽌。
5.class:定义类
class name:
6.def :定义函数
def def_name:
7.del:删除函数。通常⽤于删除list列表或 dict字典
del lista[2]:删除下标2对应元素。
del dicta[“key”] :删除key键及其对应的值。
python中所有异常都基于BaseException。为了简化,我们可以输出如下形式:
try:
  …
except Exception as n:
 print(n)
finally:
 print(result) #不管是异常,还是正确运⾏,都可以输出结果。
还有⼀些异常错误信息是模块中⾃带的错误,可以在raise中添加基类,紧挨着⼀个关于异常的提⽰。
try :
 a
except Exception as n:
 raise SyntaxError(‘Syntax Error’) from n
<():动态执⾏python代码,对象可以是字符串(将字符串解析成⼀组执⾏代码),或者执⾏对象(直接执⾏)
a = 3
b = 5
exec(“c = a * b”)
exec(“print(“hello world”)”)
定义函数:
func = ‘’‘def fact(n):
python新手代码示例
 if n==1:
  return 1
  else:
  return n*fact(n-1)’’’
exec(func)
print(fact(6))
还可以将代码存⼊⽂本当中,读取⽂本运⾏:
with open(‘F:\’,‘r’) as file:
ad())
除此之外,还可以在其中传递参数,写成字典的形式:
a = 1
b = 2
express = ‘’’
c = 3
sum = a+b+c
print(sum)’’’
def sum():
 exec(express) #第⼀次运⾏有a,b的定义
 exec(express,{‘a’:10,‘b’:20}) #后序运⾏需要定义express内未定义的变量,且expree内定义的变量⽆法改变。
 exec(express,{‘a’:10,‘b’:20,‘c’:30})
sum()
<与eval(类似exec,都是内建函数,⽤于计算python表达式,并返回结果)
from math import *
dicta = {}
exec(‘sqrt = 1’,dicta)
exec(‘sum = 2’,dicta)
#此时,dicta = {‘sqrt’:1,‘sum’:2}
print(eval(‘sqrt*sum’,dicta))
还可以输⼊计算公式来获得结果:
print(eval(input(“请输⼊待运算公式”))) #可以包含已存在变量
11.for i in b:
循环结构体,其中i为循环变量
exp1: for i in range(1,11): #1-10的循环
exp2: for i in lista: #顺序循环遍历列表的所有元素.
12.from x import y
从模块x中引⼊特定部分y
exp1: from sys import exit
exp2: from math import sqrt
exp3: from math import * #引⼊模块全部功能
13.global:全局变量声明:
python函数内的变量改变⽆法影响外部定义的变量,即便是外部声明的global函数,想要改变外部变量,必须要在函数内部定义global变量
exp:
a=1
def changea():
 global a
 a=2
print(a)
14.is:判断是否相等,类似于 ==
15.lambda:匿名函数
在python中,对于某些简单的函数功能,可以使⽤匿名函数实现,提⾼代码可读性,避免函数命名过多。
形式为lambda x,y:x+y or lambda x:x*x 以:为界限,左边为输出参数,右边为输出结果
exp: a= lambda x,y:x+y a(3,5)
16.逻辑运算 not or
not即⾮逻辑 not True == false
True or False == True
⽤于返回函数运算结果,并结束函数运⾏.
def sum(a,b):
 return a+b
18.yield:暂停函数
在python当中,带有yield的函数是⼀个⽣成器,⽽⾮函数,可以通过该⽣成器来定义迭代对象,且该⽣成器带有next函数。
def exp():
 print(“start”)
 a = yield 1
 print("a= ",a)
 a = yield 2
 print("a= ",a)
g = exp() #由于exp是个⽣成器,⽣成了迭代对象g,这⼀步不会运⾏exp函数
print(next(g)) #调⽤next函数,函数开始运⾏,直到遇到yield
#除了输出start外,由于yield起到return 的作⽤,print(next(g))需要输出返回值1.,函数停⽌运⾏。(值得注意的是,yield后函数暂停,不会进⾏赋值操作)
print(“迭代⼀次”)
print(next(g)) #第⼆个next函数,从上⼀次yield处运⾏到第⼆个yield处。且由于为完成赋值,故输出a= None,虽然输出yield返回的2. print(“迭代两次”)
输出为:
start
1
迭代⼀次
a= None
2
迭代两次
在函数内添加a= yield 0
print("a= ",a)
在上述代码的最后加上print(g.send(3))
则会在最后额外输出:
a= 3 #因为send函数除了提供next函数的功能外,还会将变量赋予a,即⽤变量替代yield 0表达式。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。