繁体   English   中英

如何解决 NameError: name 'api' is not defined 错误代码?

[英]How do solve the NameError: name 'api' is not defined error code?

我正在尝试通过 python 代码发送推文。 但由于某种原因,代码返回错误代码: NameError: name 'Girl' is not defined 我所有的代码似乎都是正确的,所以我不确定问题是什么。 不幸的是,我无法共享 simple_twit 库,因为它限制了大学的指导方针,但我觉得我犯了一个简单的错误,我没有看到,所以我将不胜感激。

这是我的代码:

import sys
import time
import simple_twit
import random



def main():
    api = simple_twit.create_api()
    simple_twit.version()

    Boy = ['David','John','Paul','Mark','James','Andrew','Scott','Steven','Robert','Stephen','William','Craig','Michael'
       ,'Stuart','Christopher','Alan','Colin','Kevin','Gary','Richard','Derek','Martin','Thomas','Neil','Barry',
       'Ian','Jason','Iain','Gordon','Alexander','Graeme','Peter','Darren','Graham','George','Kenneth','Allan',
       'Simon','Douglas','Keith','Lee','Anthony','Grant','Ross','Jonathan','Gavin','Nicholas','Joseph','Stewart',
       'Daniel','Edward','Matthew','Donald','Fraser','Garry','Malcolm','Charles','Duncan','Alistair','Raymond',
       'Philip','Ronald','Ewan','Ryan','Francis','Bruce','Patrick','Alastair','Bryan','Marc','Jamie','Hugh','Euan',
       'Gerard','Sean','Wayne','Adam','Calum','Alasdair','Robin','Greig','Angus','Russell','Cameron','Roderick',
       'Norman','Murray','Gareth','DeanEric','Adrian','Gregor','Samuel','Gerald','Henry','Benjamin','Shaun','Callum',
       'Campbell','Frank','Roy','Timothy','Liam','Noah','Oliver','William','Elijah','James','Benjamin','Lucas',
       'Mason','Ethan','Alexander','Henry','Jacob','Michael','Daniel','Logan','Jackson','Sebastian','Jack','Aiden',
       'Owen','Samuel','Matthew','Joseph','Levi','Mateo','Wyatt','Carter','Julian','Luke','Grayson','Isaac','Jayden'
       ,'Theodore','Gabriel','Anthony','Dylan','Leo','Christopher','Josiah','Andrew','Thomas','Joshua','Ezra',
       'Hudson','Charles','Caleb','Isaiah','Ryan','Nathan','Adrian','Christian']

    Girl = ['Emma','Ava','Sophia','Isabella','Charlotte','Amelia','Mia','Harper','Evelyn','Abigail','Emily','Ella',
        'Elizabeth','Camila','Luna','Sofia','Avery','Mila','Aria','Scarlett','Penelope','Layla','Chloe','Victoria',
        'Madison','Eleanor','Grace','Nora','Riley','Zoey','Hannah','Hazel','Lily','Ellie','Violet','Lillian','Zoe',
        'Stella','Aurora','Natalie','Emilia','Everly','Leah','Aubrey','Willow','Addison','Lucy','Audrey','Bella',
        'Nova','Brooklyn','Paisley','Savannah','Claire','Skylar','Isla','Genesis','Naomi','Elena','Caroline','Eliana'
        ,'Anna','Maya','Valentina','Ruby','Kennedy','Ivy','Ariana','Aaliyah','Cora','Madelyn','Alice','Kinsley',
        'Hailey','Gabriella','Allison','Gianna,Sarah','Autumn','Quinn','Eva','Piper','Sophie','Sadie','Delilah'
        ,'Josephine','Nevaeh','Adeline','Arya','Emery','Lydia','Clara','Vivian','Madeline','Peyton','Julia','Rylee',
        'Brielle','Reagan','Natalia','Jade'',Athena','Maria','Leilani','Everleigh','Liliana','Melanie','Mackenzie',
        'Hadley','Raelynn','Kaylee','Rose','Arianna','Isabelle','Melody','Eliza','Lyla','Katherine','Aubree',
        'Adalynn','Kylie','Faith','Marly','Margaret','Ximena','Iris','Alexandra','Jasmine','Charlie','Amaya',
        'Taylor','Isabel','Ashley','Khloe','Ryleigh','Alexa','Amara','Valeria','Andrea','Parker','Norah','Eden',
        'Elliana','Brianna','Emersyn','Valerie','Anastasia','Eloise','Emerson','Cecilia','Remi','Josie','Reese',
        'Bailey','Lucia','Adalyn','Molly','Ayla','Sara','Daisy','London','Jordyn','Esther','Genevieve','Harmony',
        'Annabelle','Alyssa','Ariel','Aliyah','Londyn','Juliana','Morgan','Summer','Juliette','Trinity','Callie',
        'Sienna','Blakely','Alaia','Kayla','Teagan','Alaina','Brynlee','Finley','Catalina','Sloane','Rachel','Lilly'
        ,'Ember']

    def boyname():
        global Boy
        result = random.choice(Boy)
        print('Your future son’s name can be', result)
        Boy.remove(result)

    def girlname():
        global Girl
        result = random.choice(Girl)
        print('Your future daughter’s name can be', result)
        Girl.remove(result)

    sendtweet = simple_twit.send_tweet(api, girlname())
    print()


if __name__ == "__main__":
       main()

您必须在任何 function 之外定义全局变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM