aucun module nommé StringIO

J'ai python 3.6. Je veux exécuter python fichier nommé 'operation.py' partir d'un autre fichier python nommé 'run.py'.

Dans operation.py je ne from cStringIO import StringIO. PyCharm me montre un message d'avertissement qu'il n'y a pas de module nommé StringIO. Je sais que depuis python3-je importer StringIO module de io. Cependant, lorsque j'utilise cette importation, les fonctions de ce module sont pas plus de travail.

Bien qu'il y a un avertissement dans from cStringIO import StringIO, le code fonctionne encore (je sais que cette importation fonctionne vraiment parce que j'ai essayé de faire un commentaire et il ne pouvait pas courir). Le problème est que lorsque j'essaie d'exécuter ce fichier par le " run.py fichier, il ne peut pas courir et imprime le message suivant: ModuleNotFoundError: No module named 'cStringIO'.

J'ai essayé d'utiliser cette Non résolu problème de référence dans PyCharm mais il n'a pas aidé.

Pourquoi operation.py' exécuter si l'avertissement, mais 'run.py' ne l'est pas? Comment puis-je résoudre ce problème?

operation.py:

    from cStringIO import StringIO


    str_io = StringIO()
    g = Generator(str_io, False)
    # There is a full code here...

run.py:

    import operation


    def main():
        operation

La operation.py a un avertissement, mais fonctionne bien, run.py a un échec.

  • veuillez fournir une quantité minimale d'échantillon de travail. Qu'entendez-vous par l'exécution de operation.py de run.py?
  • "Je sais que cette importation vraiment travailler parce que j'ai essayé de faire un commentaire et il ne pouvait pas courir" - ce qui ne veut pas dire que l'importation des œuvres. Votre code est également rompu avec ou sans cette importation.
  • 1. Vous avez besoin de mettre de io import StringIO. Ensuite, 2. Vous devez décrire le problème plus clairement que les "quand je l'utilise à l'importation, les fonctions de ce module sont pas plus de travail". Ce qui ne fonctionne pas et comment?
InformationsquelleAutor user9399101 | 2018-02-22