• Python中io的open()在PyCharm环境下报错和路劲的问题


    PS:我也是初学者,上班空闲时间学习学习Python。今天学到io的时候,遇到了两个用PyCharm环境编写代码的小白错误,如下:


    两个问题都是如下代码:

    1. 第一个问题:当写好代码之后,点击运行报如下错误:name 'open' is not defined


    报了错肯定就要研究呗,测试呗,所以我用交互式环境试了,正常运行。说明我脑袋里的第一个想法是错误的(版本问题),因为两个环境的版本都是一样的。

    此刻我就有点慌了,因为我脑袋里就这一个想法啊,我开始反复仔细检的查一眼就能够扫完的代码。最终并没有收获。于是我要去问度娘了,可是结果不尽人意,

    他们都不是我这个环境的。唯一一个间接帮到我的可能是看到一个说项目中__init__.py文件问题,但我这个项目并没有这个文件。不过我还是去看了一眼项目,

    这一看让我知道了问题的所在:

    很明显,我这样命名就是重写Python内置的io了,所以在我调用open()时,会报未定义。
    解决方法:改一下这个名字就可以了。


    2. 第二个问题:应该也是如我般初学者容易犯的,那就懒,想着用copy来省事儿,但是往往会出现如下错误:


    当出现这样的错误,第一反应肯定是去看是不是自己路径哪儿错了,但是一般都会让你很失望,因为你是copy的,一般是不会手抖copy错的,如果copy都能copy错,那恭喜你,你离成功又远了一步。那么copy导致错误的原因是什么呢?就是copy可能中间出现一些人眼看不到的特殊字符,但是计算机是可以看到的,它多么厉害。。。。
    那么怎么解决呢?
    当然很简单,就是自己手动再敲一遍路劲,既解决了问题,又治疗了懒病,一举两得岂不快哉?

    好了,今天的总结就到这里了,谢谢各位观看!
    有一起自学的可以滴滴我,QQ群:747509472,群里也分享了很多资料工具等。

  • 相关阅读:
    使用ActivityGroup来切换Activity和Layout
    Fragment
    [Java]LeetCode297. 二叉树的序列化与反序列化 | Serialize and Deserialize Binary Tree
    [Swift]LeetCode298. 二叉树最长连续序列 $ Binary Tree Longest Consecutive Sequence
    [Swift]LeetCode296. 最佳开会地点 $ Best Meeting Point
    [Swift]LeetCode294. 翻转游戏之 II $ Flip Game II
    [Swift]LeetCode293. 翻转游戏 $ Flip Game
    [Swift]LeetCode291. 单词模式 II $ Word Pattern II
    [Postman]发出SOAP请求(18)
    [Postman]生成代码段(17)
  • 原文地址:https://www.cnblogs.com/dbdd/p/9921753.html
Copyright © 2020-2023  润新知