我正在编写一个程序,我需要程序返回一个整数说changed
来提醒控制器有一些变化。但是当我想要返回这个值时,我一直收到这条消息:
return 1
SyntaxError: 'return' outside function
我在线阅读了一些帖子,他们都说这是缩进问题,但我确信我的缩进是正确的,因为我尝试过这么简单的程序,但失败仍然存在。
# -*- coding: utf-8 -*-
if __name__ == "__main__":
return 1
这是错误消息:
runfile('/home/iphyer/untitled1.py', wdir='/home/iphyer')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 699, in runfile
execfile(filename, namespace)
File "/usr/local/lib/python2.7/dist-packages/spyderlib/widgets/externalshell/sitecustomize.py", line 81, in execfile
builtins.execfile(filename, *where)
File "/home/iphyer/untitled1.py", line 9
return 1
SyntaxError: 'return' outside function
虽然我的真实程序比这更复杂,但结构是一样的。
我很困惑,因为如果我评论return
语句,所有程序都可以在没有任何警告的情况下运行。
这令人困惑。我想我无法使用if __name__ == "__main__
return
某些值?
谢谢!〜
答案 0 :(得分:5)
当有问题的文件作为独立程序运行时,<?php
$dbhost = 'localhost';
$dbuser = 'Krishna';
$dbpass = 'xxxx';
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
session_start();
if (isset($_POST['submit'])){
if(! $conn ) {
die('Could not connect: ' . mysqli_error());
}
}
mysqli_select_db($conn, "krishna");
$sql = "INSERT INTO contact_us (name, email, sub, mess)
VALUES ('$_POST[name]','$_POST[email]','$_POST[sub]','$_POST[mess]')";
if(! $sql) {
die('Error: ' . mysqli_error());
}
echo "1 Record Added to Table\n";
echo "<a href='contactForm.html'>Back to main page</a>";
mysqli_close($conn);
?>
的主体会执行。在这种情况下,您可能需要的是if __name__ == "__main__":
或exit()
,它允许您将有限的信息返回到调用此脚本的脚本。通常,您可以使用sys.exit()
表示成功,也可以使用非零结果(限制为1 - 255)表示可能的失败。 exit(0)
用于子程序/函数,return
用于程序。
答案 1 :(得分:3)
因为if statement不是一种方法。您只能在Python中return
public static void createAudioFile(String text, String fileName) {
AudioPlayer audioPlayer = null;
System.setProperty("mbrola.base", Constants.mbrolaDiskPath);
Voice voice;
VoiceManager vm = VoiceManager.getInstance();
voice = vm.getVoice("mbrola_us1");
//voice = vm.getVoice("kevin16");
voice.allocate();
try{
String directoryPath = audioDir+fileName;
audioPlayer = new SingleFileAudioPlayer(directoryPath,Type.WAVE);
voice.setAudioPlayer(audioPlayer);
**voice.speak(text);**
voice.deallocate();
audioPlayer.close();
}
catch(Exception e){
e.printStackTrace();
}
}
。