Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/335.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.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程序吗?_Python_Python 3.x - Fatal编程技术网

有人能帮我调试python程序吗?

有人能帮我调试python程序吗?,python,python-3.x,Python,Python 3.x,因此,每当我运行这个程序时,我都会得到一个语法错误,上面说: 文件“dice.py”,第17行 def骰子(骰子数量): ^ SyntaxError:无效语法 节目如下: # dice.py # written for python 3.4 # by Will Jones import os import platform import random opSys = platform.system() if opSys == "Windows": system.os("cls")

因此,每当我运行这个程序时,我都会得到一个语法错误,上面说: 文件“dice.py”,第17行 def骰子(骰子数量): ^ SyntaxError:无效语法

节目如下:

# dice.py
# written for python 3.4
# by Will Jones

import os
import platform
import random

opSys = platform.system()

if opSys == "Windows":
    system.os("cls")
else:
    system.os("clear")

print("This program gives you a number based on 1 or more dice rolls\n")
diceAmount = eval(input("Enter an amount of dice to roll")

def dice(diceAmount):

    rolls = diceAmount

    while rolls > 0
        rolls = rolls - 1
        dieRoll = random.randint(0,6)
        sum = 0 + dieRoll
        print("The number is:", sum)

def main():

    pie = 4
    dice(diceAmount)
    input("Enter any key to quit")
    system.os("exit")

main()

我在想为什么它不让我定义一个该死的函数。啊。。。唉,我来找你是想寻求帮助。

你少了一个括号

diceAmount = eval(input("Enter an amount of dice to roll")
应该是

diceAmount = eval(input("Enter an amount of dice to roll"))
此外,您的while循环中缺少一个冒号

while rolls > 0
应该是

while rolls > 0:

你缺少一个括号

diceAmount = eval(input("Enter an amount of dice to roll")
应该是

diceAmount = eval(input("Enter an amount of dice to roll"))
此外,您的while循环中缺少一个冒号

while rolls > 0
应该是

while rolls > 0:

我同意大卫的观点,但我不会保留评估()。那场争论是另一天的事

现在,每当您遇到类似这样的语法错误时,您应该在代码中反向工作,以计算最后一段将被扫描的非空白

一个好的C程序员做这件事是第二天性,有时它在一个包含的文件中,有时中间有几页注释

这是因为行号通常反映了编译器/解释器对前几行中未完成或不正确构造的异议。它“认为”您的函数定义是前面语句的一部分。它必须读一行“好”字才能知道前一行是不完整的

一个好的LSE应该和大括号匹配。Notepad++动态地执行此操作,因此它是一个被动指示器

这是你的作业吗?导入操作系统并使用system.os()(原文如此)而不是os.system()似乎是一项教程任务


不要气馁,不要在这里发帖,每个人都从某个地方开始。

同意David的观点,但我不会保留eval()。那场争论是另一天的事

现在,每当您遇到类似这样的语法错误时,您应该在代码中反向工作,以计算最后一段将被扫描的非空白

一个好的C程序员做这件事是第二天性,有时它在一个包含的文件中,有时中间有几页注释

这是因为行号通常反映了编译器/解释器对前几行中未完成或不正确构造的异议。它“认为”您的函数定义是前面语句的一部分。它必须读一行“好”字才能知道前一行是不完整的

一个好的LSE应该和大括号匹配。Notepad++动态地执行此操作,因此它是一个被动指示器

这是你的作业吗?导入操作系统并使用system.os()(原文如此)而不是os.system()似乎是一项教程任务


不要气馁,不要在这里发帖,每个人都从某个地方开始。

谢谢,你是救命恩人。我希望我不会因为犯了这样粗心的错误而显得像个白痴。谢谢,你是个救命恩人。我希望我不会因为犯了这样粗心的错误而显得像个白痴。“有人能帮我调试python程序吗?”根本没有概括你的问题。请阅读“有人能帮我调试python程序吗?”一点也不概括您的问题。请读给我听,我在那里也搞砸了。不,这不是家庭作业,而是我从一本编程书上得到的练习。我还是个傻瓜:-/很好,看看我的小更新。尝试python的人越多,它就越能坚持下去。不要介意管理员,他们有自己的规则。这种类型的问题有时会发现一个真正的bug。但是首先你要鼓起勇气——这会塑造你的性格。谢谢你,麦肯兹。这让我觉得问起来好多了。是的,我也把事情搞砸了。不,这不是家庭作业,而是我从一本编程书上得到的练习。我还是个傻瓜:-/很好,看看我的小更新。尝试python的人越多,它就越能坚持下去。不要介意管理员,他们有自己的规则。这种类型的问题有时会发现一个真正的bug。但是首先你要鼓起勇气——这会塑造你的性格。谢谢你,麦肯兹。这让我对提问感觉好多了。