我创建了一个文件来访问所有全局变量我无法访问pyspark sql查询中定义的自定义项中的全局变量

lx0bsm1f  于 2021-05-27  发布在  Spark
关注(0)|答案(1)|浏览(352)

已定义全局变量的文件:


# Globals.py--

def init():
    global XYZ
    XYZ='Some Variable'
    print("GLobal Variables initialized Successfully ")

这是试图访问“xyz”全局变量的udf函数

import Globals

# udfs.py

def trans_thrp_cd():
    try:
        global xyz
        print(xyz)
    except Exception as e:
        print("Error in fetching value from the globals "+ str(e))

# main.py

import Globals
spark and other modules import-initialization
register functions as pyspark-hive UDFs

df=hive_context.sql("select trans_thrp_cd from test.people")
df.show()

获取以下提到的错误:


# Error

module 'Globals' has no attribute 'XYZ'
ktecyv1j

ktecyv1j1#

在globals.py中:

global XYZ
XYZ = 'Some variable'

在udfs.py中:

import Globals
print(Globals.XYZ)

相关问题