美文网首页Python
Python第一天

Python第一天

作者: zplus_ | 来源:发表于2018-11-28 00:35 被阅读0次


    一、杂项

    1、除法:/ 永远得到的都是浮点数

    2、整除:// 

    3、print()  输出的是无引号和转义字符(直接显示)

    4、多行输出用三个引号,某行最后面加\表示不换行

    5、字符串可以使用*表示重复,相邻的两个字符串文本自动连接在一起,无需+

    6、python交互式可以使用_来表示上次的输出

    二、列表+循环

    1、.append(a)追加元素a

    2、len(aa) 列表长度

    3、print(end=",") 不换行,只输出逗号

    4、range的返回值是range类型,不是list,需要强制转化,原因:为了节省空间,它并不真正构造列表

    5、使用append实际是修改一个列表,使用+实际是创建一个新的列表

    6、循环也有else,和for同列,当迭代完整个列表(中途没有break),才会被执行

    for i in range(9):

            if i>5:

                  print(i)

    else:

            print(i)

    try 语句的 else 子句在未出现异常时运行

    循环的 else 子句在未出现 break 时运行

    三、函数

    1、函数调用会为函数局部变量生成一个新的符号表。

    2、变量引用查找顺序:局部符号表-》包含函数的局部符号表-》全局符号表-》内置名字表

    3、因此,全局变量不能在函数中直接赋值(除非用 global 语句命名),尽管他们可以被引用。

    4、函数引用的实际参数在函数调用时引入局部符号表,因此,实参总是传值调用 (这里的值总是一个对象引用 ,而不是该对象的值)

    5、函数的名可以重命名

    6、函数可以默认参数

    7、重要警告: 默认值只被赋值一次。

    这使得当默认值是“可变对象”时会有所不同,比如列表、字典或者大多数类的实例。

    例如,下面的函数在后续调用过程中会累积(前面)传给它的参数:

    def f(a, L=[]):

            L.append(a)

            return L

    print(f(1))

    print(f(2))

    print(f(3))

    这将输出:

    [1]

    [1, 2]

    [1, 2, 3]

    如果你不想让默认值在后续调用中累积,你可以像下面一样定义函数:

    def f(a, L=None):

        if L is None:

            L = [ ]

        L.append(a)

    return L

    相关文章

      网友评论

        本文标题:Python第一天

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