zoukankan      html  css  js  c++  java
  • Python变量

    1 >.变量可以由字母,数字或者下划线任意组合而成,唯一的约束是变量的第一个字符必须是字母或者下划线,而不可以是数字

    2>.python与其他编程语言最大的区别就是赋值不需要类型声明,而且变量可以存储任何值

    3>.变量不仅可以赋值各种类型,而且还可以随意改变类型

    4>.局部变量只能对一部分代码产生作用,一旦这部分代码结束,这个变量就会被回收.

     1 def aoe():
     2     a = 1
     3 if __name__ == "__main__":
     4     aoe()
     5     print(a)
     6 
     7 #运行结果:
     8 File "D:/PycharmProjects/MyScripts/python.py", line 5, in <module>
     9     print(a)
    10 NameError: name 'a' is not defined

    代码说明:

    1.定义一个aoe函数

    2.将变量a赋值为1

    3.主函数调用

    4.调用aoe函数

    5.打印变量a

    报错原因:因为第四行执行完aoe函数后变量a就被收回收了,第五行代码执行时发现不存在a这个变量,所以报错.修改代码如下,不再报错:

    1 def aoe():
    2     a = 1
    3     print(a)
    4 if __name__ == "__main__":
    5     aoe()
    6 #运行结果
    7 1

    5>.全局变量一般定义在文件的开头,不能放在某个函数之中.全局变量可以被外部文件或者文件内部其他函数调用.但调用时需要通过一个global+变量的方式才能引用全局变量

     1 a = 1
     2 def aoe():
     3     global a
     4     print(a)
     5 if __name__ == "__main__":
     6     aoe()
     7     print(a)
     8 #运行结果
     9 1
    10 1

    6>全局变量可以被函数所改变.实例代码如下 

     1 a = 1
     2 def aoe():
     3     global a
     4     a = 2
     5     print(a)
     6 if __name__ == "__main__":
     7     aoe()
     8 print(a)
     9 #运行结果
    10 2
    11 2

     可见,全局变量也是可以被引用后改变的,并以最后一次改变的值作为最终的值

  • 相关阅读:
    BZOJ2756:[SCOI2012]奇怪的游戏(最大流,二分)
    AtCoder Grand Contest
    BZOJ2565:最长双回文串(Manacher)
    BZOJ2160:拉拉队排练(Manacher)
    BZOJ3790:神奇项链(Manacher)
    BZOJ2342:[SHOI2011]双倍回文(Manacher)
    BZOJ4887:[TJOI2017]可乐(矩阵乘法)
    BZOJ2555:SubString(SAM,LCT)
    BZOJ1396:识别子串(SAM)
    luogu P1080 国王游戏
  • 原文地址:https://www.cnblogs.com/yaoze2018/p/10739239.html
Copyright © 2011-2022 走看看