美文网首页菜鸟Python晋级
Python 之关键字和实例

Python 之关键字和实例

作者: 酒深巷子Ya | 来源:发表于2018-04-09 20:10 被阅读434次

    一、python关键字


    Screen Shot 2018-04-09 at 19.50.17.png

    1. and :表示逻辑判断 【与】

    a = '1'
    b = 1
    if a and b:
        print('Hello Python')
    

    2.as :单独没有实际意思,常与with组合使用,with...as 例如:

    with open('./test.txt', 'w') as f:
        f.write('人生苦短, 我用python')
    

    3.assert : 表示断言, assert语句用来声明某个条件是真的。例如,如果你非常确信某个条件为真,而你想要检验这一点,并且在它非真的时候引发一个错误,那么assert语句是应用在这种情形下的理想语句。当assert语句失败的时候,会引发一AssertionError。

    a = 2
    assert a >= 2
    print(a)
    a = 1
    assert a >= 2
    print('a')
    
    Screen Shot 2018-04-09 at 20.17.11.png

    4.break : 跳出循环体 与continue比较记忆 continue跳出本次循环。 例如 break

    list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    for i in list:
        if i == 6:
            break
        print(i)
    
    Screen Shot 2018-04-09 at 20.22.53.png

    continue:

    list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    for i in list:
        if i == 6:
            continue
        print(i)
    
    Screen Shot 2018-04-09 at 20.24.52.png

    5.class : 创建类

    class Student():
        def __init__(self, name, age):
            self.name = name
            self.age = age
    
        def info(self):
            print('name:', self.name)
            print('age:', self.age)
    
    stu = Student('didi', 20)
    stu.info()
    
    结果: Screen Shot 2018-04-09 at 20.48.58.png

    6.continue : 跳出本次循环 不终止循环 参考4 break

    7.def : 定义函数

    def return_max(x, y):
        return max(x, y)
    print(return_max(3, 5))
    

    8.del : 删除

    list = [1, 2, 3, 4, 5, 6, 7]
    del list[1]
    print(list)
    del list
    print(list)
    
    结果: Screen Shot 2018-04-09 at 20.54.56.png

    9.elif : 和if配合使用的,if语句中的一个分支用elif表示。

    num = int(input('请输入一个数:'))
    if num > 0:
        print(num,' 是正数')
    elif num == 0:
        print(num, '等于0')
    else:
        print(num, '是负数')
    

    10.else : 参照9 elif, else 还可以和try 一起使用用来捕捉异常,参照下面 try的用法

    1. except :和try一起使用,用来捕获异常。
    try:
        raise EOFError
    except EOFError:
        print('EOFError异常。')
    

    和else一起使用

    list = [1, 2, 3, 4, 5, 6, 7, 8]
    try:
        list.append(100)
        print(list[8])
    except IndexError:
        print('数组越界')
    else:
        print(list)
    

    和finally一起使用:

    list = [1, 2, 3, 4, 5, 6, 7, 8]
    try:
        list.append(100)
        print(list[8])
    except IndexError:
        print('数组越界')
    finally:
        print(list)
    

    12.exec : exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句。

    str = 'print(\'Hello World\')'
    exec(str)
    

    13.finally : 始终模块里的代码始终都会执行,参照11 excep

    14.for 循环遍历 乘法口诀

    for i in range(1, 10):
        for j in range(1, i + 1):
            print('{} * {} = {} '.format(j, i ,j * i), end = '\t')
        print('')
    

    15.from : 导入相应的模块,用import或者from...import

    16.global : 定义全局变量

    
    #定义全局变量:变量名全部大写
    NAME = 'didi'
    
    #得到NAME
    def get_NAME():
        return NAME
    
    #重新设置NAME的值
    def set_NAME(name_value):
        global NAME
        NAME = name_value
    
    print(get_NAME())
    set_NAME('didididi')
    print(get_NAME())
    

    17.if : 条件语句参照11 elif

    18.import :导入相应的模块,用import或者from...import

    19.in : 查找列表中是否包含某个元素,或者字符串a是否包含字符串b。需要注意的是:不可以查看list1是否包含list2。

    list1 = [1, 2, 3]
    list2 = [1, 2, 3, 4, 5]
    str1 = 'abcd'
    str2 = 'abcdef'
    print( str1 in str2)   #True
    print(1 in list1)   #true
    print(list1 in list2)  #False
    

    20.is : Python中的对象包含三要素:id、type、value
    其中id用来唯一标识一个对象(id 就相当于内存地址 指针),type标识对象的类型,value是对象的值, is判断的是a对象是否就是b对象,是通过id来判断的, is not 用于判断两个对象不相等。==判断的是a对象的值是否和b对象的值相等,是通过value来判断的。

    list1 = [1, 2, 3, 4, 5]
    list2 = [1, 2, 3, 4, 5]
    list3 = list2
    print(id(list1))
    print(id(list2))
    print(id(list3))
    
    1. lambda : 匿名函数,提升代码的简洁程度,便于阅读
    f = lambda : 'Hello World !'
    f()
    
    max_value = lambda x, y = 2: max(x, y)
    print(max_value(5))
    

    22.nonlocal : 关键字nonlocal的作用与关键字global类似,使用nonlocal关键字可以在一个嵌套的函数中修改嵌套作用域中的变量。

    def foo1():
        num = 2
        def foo2():
            num = 5
        foo2()
        print('num = ', num)
    
    foo1() # num = 2
    
    def foo1():
        num = 2
        def foo2():
            nonlocal num
            num = 5
        foo2()
        print('num = ', num)
    
    foo1() # num = 5
    

    22.not : 表示逻辑‘非’

    23.or : 表示逻辑‘或’

    24.pass : pass的意思就是什么都不做。相当于占位:当我们写一个软件的框架时,具体方法和类来不及实现,就在方法和类里面加上pass,这样编译起来就不会报错,如下:

    def test():
        pass #  不加pass 会报错
    

    25.print : 打印函数,python3.0之后 print() 要加括号

    26.raise : raise 抛出一个异常,一旦执行raise语句,后面的代码就不执行了,可以结合try 使用

    try:
        raise EOFError
        print('Hello World !')  #不执行
    except EOFError:
        print('EOFError 错误')   #  打印 EOFError错误
    

    27.return : 跳出函数或者跳出的同时返回一个值

    28.try : 补货异常使用,参照11 except的使用

    29.with : 不单独使用,和as一起使用,参照 2 as

    30.yield : 要理解yiled还需要理解生成器,而要理解生成器,首先需要理解迭代器。
    迭代器:所有你可以用在for...in...语句中的都是可迭代的:比如lists,strings,files...因为这些可迭代的对象你可以随意的读取所以非常方便易用,但是你必须把它们的值放到内存里,当它们有很多值时就会消耗太多的内存.
    生成器:生成器也是迭代器的一种,但是你只能迭代它们一次.原因很简单,因为它们不是全部存在内存里,它们只在要调用的时候在内存里生成:

    def test_yield(num):
        for i in range(num):
            print('============', i)
            yield i * 2
            # return i * 2
    for i in test_yield(10):
        print('------------------', i)
        print(i, end='\t')
    print('')
    

    相关文章

      网友评论

        本文标题:Python 之关键字和实例

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