【发布时间】:2013-02-18 07:40:22
【问题描述】:
我有以下代码读取配置文件并将结果作为列表存储在一些变量中
import ConfigParser
def read_config_file():
config = ConfigParser.ConfigParser()
cnf_path = 'config_files/php.sr'
config.read(cnf_path)
if config.has_section('basic'):
if config.has_option('basic', 'basic'):
php_bsc_mdls = config.get('basic', 'basic').split(',')
if config.has_section('advance'):
if config.has_option('advance','advance'):
php_adv_mdls = config.get('advance', 'advance').split(',')
现在我想从函数中获取结果变量 php_bsc_mdls 和 php_adv_mdls
类似read_config_file.php_bsc_mdls 或read_config_file.php_adv_mdls
那么是否可以从 python 函数中访问/获取变量?
【问题讨论】:
-
return (php_bsc_mdls, php_adv_mdls) -
当我尝试像 read_config_file.php_bsc_mdls 一样访问时,我得到了这个错误 AttributeError: 'function' object has no attribute 'php_bsc_mdls'
-
视情况而定,从根本上说,python 中有一种方法可以访问函数的本地环境,但如果你必须这样做,那你就做错了!如果两个 if 子句都没有被命中,那么会发生什么情况,那么变量不会被创建(python 是一种解释语言),因此你需要重写这个函数,让它返回这个值,初始化为 None ...跨度>
标签: python function variables configparser