【问题标题】:PyCharm won't print or returnPyCharm 不会打印或返回
【发布时间】:2017-12-11 05:48:45
【问题描述】:

我正在使用的代码如下:

def fragmenten(bestand):


    bestand = open('fragmenten1n.txt', 'r')
    dic = {}

    for regel in bestand:
        regel = regel.strip("\n")
        for element in regel:
            if element != "-" and element != " ":
                dic[(regel.find(element) + 1)] = {element}

return(dic)

我的问题是由于某种原因 PyCharm 不会返回任何东西(我希望得到 dic 作为回报)。我尝试使用打印功能,但 PyCharm 提供的只是

Process finished with exit code 0

这很好,但我也喜欢看到我的解决方案。现在我知道我的程序提供了解决方案,因为当我在学校网站上输入我的程序时,我确实得到了解决方案。所以也许我只是在错误的窗口中工作。

这是我当前的窗口:

有人知道如何更改这些设置吗?还是我的代码出了问题?

非常感谢

【问题讨论】:

  • 你在调用这个函数吗?
  • 我只想返回我在 for 循环之前制作的字典。 (如果这就是你的意思?)

标签: python pycharm


【解决方案1】:

你需要调用你的函数。尝试将以下代码添加到文件末尾。函数之外。

if __name__=="__main__":
  fragmenten(bestand)

但是,将 bestand 作为参数传递是很奇怪的,因为您在函数的开头再次声明了它。尝试删除参数,并在没有它的情况下调用函数。

【讨论】:

  • 这个“奇怪”的调用是因为它是一个学校项目,我的学校计划每次都重新定义“bestand”,因此可以使用不同的文件进行测试。
  • 如果我添加它会给我以下错误:如果 name == "main":\ SyntaxError: invalid syntax。由于 idk 这个函数我不知道可能是错字还是别的什么
  • If __name__=="__main__": 必须和写的一模一样
  • @Liberty Verleysen If 应该是 if
  • @coal 似乎没有区别
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-02
  • 1970-01-01
  • 1970-01-01
  • 2023-04-05
  • 2018-11-15
  • 1970-01-01
相关资源
最近更新 更多