国产99视频精品免视看6

    1. <em id="yud1w"><acronym id="yud1w"><u id="yud1w"></u></acronym></em>
      
      
      <button id="yud1w"></button>

      python

      当前位置:首页?>?python基础教程?>?当前文章

      python基础教程

      python函数坑之修改不可变类型全局变量

      2020-09-29 132赞 python中国网
      每篇文章努力于解决一个问题!python高级、python面试全套、操作系统经典课等可移步文章底部。

        前言:函数的坑有不少,本文只是小菜,大家可以查看此文python函数各种坑了解更多。

        1、对于不可变类型全局变量,要想在函数内部使用他(不改变他),可以直接用。

      # ‐*‐ coding: utf‐8 ‐*‐
      
      number = 1000
      
      def func():
          print('函数内部',number ,id(number))
      
      func()
      print('函数外部',number,id(number))
      
      
      函数内部 1000 1847914573552
      函数外部 1000 1847914573552
      

        2、对于不可变类型全局变量,要想在函数内改变他,也可以直接用,但是要定义新的变量名来接收值。

      # ‐*‐ coding: utf‐8 ‐*‐
      
      number = 1000
      
      def func():
          print('函数内部',number ,id(number))
          new_num = number + 1
          print('函数内新的数值',new_num,id(new_num))
      
      func()
      print('函数外部',number,id(number))
      
      
      函数内部 1000 2009241399024
      函数内新的数值 1001 2009241647696
      函数外部 1000 2009241399024
      

        3、对于不可变类型全局变量,要想在函数内部使改变他,但是不定义新的变量名,则必须使用global。

      # -*- coding: utf-8 -*-
      
      number = 1000
      
      def change():
          global number
          number = number + 1 # 没有global,这句话会报错
          print('函数内部',number ,id(number))
      change()
      print('函数外部',number,id(number))  
      
      
      函数内部 1001 2511023615728
      函数外部 1000 2510993862352
      
      

      # -*- coding: utf-8 -*-
      
      number = 1000
      
      def change():
          # global number
          number = number + 1
          print('函数内部',number ,id(number))
      
      change()
      print('函数外部',number,id(number))
       
      
      Traceback (most recent call last):
        File "D:/pyscript/py3script/linshi.py", line 10, in 
          change()
        File "D:/pyscript/py3script/linshi.py", line 7, in change
          number = number + 1
      UnboundLocalError: local variable 'number' referenced before assignment
      
      

      文章评论

      python函数坑之修改不可变类型全局变量文章写得不错,值得赞赏
      国产99视频精品免视看6