Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python NameError:未定义名称doohickey_Python_Django - Fatal编程技术网

Python NameError:未定义名称doohickey

Python NameError:未定义名称doohickey,python,django,Python,Django,我在将我创建的模块中的函数导入代码时遇到问题。尽管将模块导入到我的文件中,但我收到一个错误,说明函数未定义 错误消息: something = doohickey() NameError: name 'doohickey' is not defined something = doohickey() NameError: name 'doohickey' is not defined something = hello.get_random_tweet.doohickey() Nam

我在将我创建的模块中的函数导入代码时遇到问题。尽管将模块导入到我的文件中,但我收到一个错误,说明函数未定义

错误消息:

something = doohickey()
NameError: name 'doohickey' is not defined
 something = doohickey()
 NameError: name 'doohickey' is not defined
 something = hello.get_random_tweet.doohickey()
 NameError: name 'doohickey' is not defined
获取\u random\u tweet.py

import twitter

api = twitter.Api(consumer_key='',
                  consumer_secret='',
                  access_token_secret='')

timeline = api.GetUserTimeline(screen_name='realDonaldTrump',
                               include_rts=False,
                               trim_user=True,
                               exclude_replies=True,
                               count=6)

def doohickey():
    pprint(timeline)
    return {'index': "<i> something </i>"}
我还尝试了以下几点:

 from django.shortcuts import render
 from django.http import HttpResponse
 from hello.sampled_stream import okdood
 from hello.get_random_tweet import doohickey
 from .models import Greeting

 # Create your views here.
 def index(request):
 # return HttpResponse('Hello from Python!')
 # okdood()
 something = doohickey()
 return render(request, "index.html")
错误消息:

something = doohickey()
NameError: name 'doohickey' is not defined
 something = doohickey()
 NameError: name 'doohickey' is not defined
 something = hello.get_random_tweet.doohickey()
 NameError: name 'doohickey' is not defined

错误消息:

something = doohickey()
NameError: name 'doohickey' is not defined
 something = doohickey()
 NameError: name 'doohickey' is not defined
 something = hello.get_random_tweet.doohickey()
 NameError: name 'doohickey' is not defined

问题似乎在于,您没有将
doohickey
函数作为
hello.get\u random\u tweet
命名空间的一部分。您可以通过以下几种方式完成此操作:

from django.shortcuts import render
from django.http import HttpResponse
from hello.sampled_stream import okdood
from hello.get_random_tweet import doohickey
from .models import Greeting

# Create your views here.
def index(request):
   # return HttpResponse('Hello from Python!')
   # okdood()
   something = doohickey()
   return render(request, "index.html")


由于您的代码当前是结构化的,因此导入
hello.get\u random\u tweet
模块,但是当您参考
doohickey
时,Python正在本地名称空间中查找它。但是,它应该在
hello.get\u random\u tweet
名称空间中查找它。您可以导入函数并将其添加到本地名称空间(如第一个代码段所示),也可以引用导入模块名称空间中的函数(如第二个代码段所示)。

可能是复制/粘贴错误,但此处几行缺少尾端引号和右括号:

api = twitter.Api(consumer_key='',
                  consumer_secret='',
                  access_token_secret=''
应该是:

api = twitter.Api(consumer_key='',
                  consumer_secret=''
                  access_token_key=''
                  access_token_secret='')

你需要从你的
get\u random\u tweet
模块中导入函数。我做到了。仍然是相同的错误消息。您是如何做到的?我猜这不是您粘贴到公共场所的真实API访问凭据吗?:/如果是,您可能想删除它们?我已经尝试了这两种方法。仍然不起作用。@user2353418请使用这些选项发布您的结果。第一个选项错误消息://something=doohickey()//NameError:name'doohickey'不可用defined@user2353418如何导入
doohickey
?第二个选项错误消息:something=get\u random\u tweet.doohickey()name错误:未定义名称“doohickey”