TypeError“str”对象不是可调用的Python

2024-06-27 09:11:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我对Python完全陌生,我正试图编写一个程序,它基本上可以作为闹钟使用。我提示用户指定一个特定的时间来设置警报,然后当这个时间发生时,一个从youtube视频列表中获取的视频文件将被播放。但是,我不太清楚为什么会出现这个错误,因为我对python语法还不太熟悉。我的代码是:

import time

def addVideo():
    videoToAdd = raw_input("Enter the url of the video to add: ")
    with open('alarmVideos.txt', 'w') as f:
        f.write(videoToAdd + '\n')

alarmTime = raw_input("When would you like to set your alarm to?: \nPlease use this format: 01:00\n")

localTime = time.strftime("%H:%M") 

addVideo = raw_input("Would you like to add a video to your list? (y/n): \n")

if addVideo == 'y' or addVideo == 'n':
    addVideo()


print "Your alarm is set to:", alarmTime

我得到了这个错误:

^{pr2}$

如果这有助于此错误发生在用户输入y/n以确定是否要将视频添加到其列表中。谢谢你的帮助!在


Tags: theto用户add列表inputraw视频
3条回答

由于要重写函数,raw_input("Would you like to add a video to your list? (y/n): \n")需要另一个名称引用:

run = raw_input("Would you like to add a video to your list? (y/n): \n")
if run == 'y' or run == 'n':
    addVideo()

问题是,由于函数名和变量都使用相同的名称(addVideo),Python“混淆”了函数和变量。重命名其中任何一个:

import time

def addVideo():
    videoToAdd = raw_input("Enter the url of the video to add: ")
    with open('alarmVideos.txt', 'w') as f:
        f.write(videoToAdd + '\n')

alarmTime =raw_input("When would you like to set your alarm to?: \nPlease use this format: 01:00\n")

localTime = time.strftime("%H:%M")

add_Video = raw_input("Would you like to add a video to your list? (y/n): \n")

if add_Video == 'y' or add_Video == 'n':
    addVideo()


print( "Your alarm is set to:", alarmTime)

输出:

^{pr2}$

您正在用字符串重写addVideo()函数:addVideo = raw_input("Would you like ...")

您需要重命名函数或变量。在

addVideoResult = raw_input("Would...")

if addVideoResult == 'y' or addVideoResult == 'n':
    addVideo()

相关问题 更多 >