全局变量在python中的文件之间不变

时间:2018-04-03 18:33:00

标签: python python-3.x tkinter global-variables

我将全局变量保存在一个文件中,并将该文件导入两个文件。其中一个用于更改此全局变量的值,另一个用于更改此值的值。

在第一个文件中,在一个类

<?php
/**
* Clockwork PHP API
*
* @package     Clockwork
* @copyright   Mediaburst Ltd 2015
* @license     MIT
* @link        http://www.clockworksms.com
* @version     1.3.2
*/

namespace mediaburst\ClockworkSMS;

/**
* Main Clockwork API Class
*
* @package     Clockwork
* @since       1.0
*/
class Clockwork {

  /*
  * Version of this class
  */
  const VERSION           = '2.0.0';
 //....
}

在第二档

from globals.py import *
.
.
.class ...
    def uploadClick(self):
        global filename
        filename = dialog.askopenfilename()
        print(filename)

在globals文件中

from globals.py import *
.
.
.
  def mainAnalysis():
    global filename , semantic_orientation
    print("filename = "+filename)
    n_docs=0
    with open(filename, 'r') as f:
        count_all = Counter()

filename ='' 之后调用mainAnalysis函数。

uploadClickfunction函数运行

时,我收到一条错误消息,指出filename为空

1 个答案:

答案 0 :(得分:3)

语法from globals.py import *globals.py中的变量复制到本地文件中。要在不复制import globals的情况下访问变量本身并直接使用变量:globals.filename。如果以这种方式访问​​变量,则不再需要global关键字。