2017-11-16 6 views
-3

私は676行のプログラムを持っていましたが、今度は私のコードがすべて消えてしまったので、過去に問題が発生しました。しかし、私はそれを実行し、私のバックアップされコードをコピー&ペーストしようとすると、それは私にこの構文エラーを与える:ソースコード文字列にヌルバイトを含めることはできません

「ソースコードの文字列がnullバイトを含めることはできません」

私が最初にバックアップを作成したとすると、このは表示されませんでしたプログラムは正常に動作していました。私は本当に676行をすべてやり直したいとは思わない。 Pythonに関してはかなり基本的なプログラマーです。

すでに空白とコメントを削除しようとしました/#(赤い背景色は#の末尾にあります) 既にすべてのコードを調べても、実際にはエラーはありません。

+0

ようこそStackOverflow。ヘルプドキュメントの投稿ガイドラインを読み、それに従ってください。 [最小、完全で検証可能な例](http://stackoverflow.com/help/mcve)がここに適用されます。 MCVEコードを投稿して問題を正確に記述するまでは、効果的にお手伝いすることはできません。 投稿したコードをテキストファイルに貼り付け、説明した問題を再現できるはずです。 – Prune

+0

あなたはどこかでヌルバイトをコピーしたのでしょうか? – syntonym

+0

[コードを貼り付ける](https://pastebin.com/uegM0AL2) –

答えて

0

エラーメッセージには、バックアップコピーが何らかの理由で1つ以上のnullバイト(ASCII値00)で「感染」している可能性があります。不正なバイトを含むコードを見つけるために、コードを一度に1ブロック、たとえば50行貼り付けます。最も最近追加されたコード、一度に5行を削除して、ヌルバイトを持つものを探します。問題のある行を再入力し、次の行に進みます。 「W」、およびダンプのために再度、ファイルを閉じて開き今

with open("homework.py", 'r') as infile: 
    hw = infile.readlines().replace(chr(0), '') 

別の可能性は、ファイルを読み込み、NULLバイトが文字列replaceメソッドを使用して削除する簡単なPythonスクリプトを書くことですそれに対する変数はhwです。

+0

サブルーチンのセクションにコピーされ、うまくいきました。私は3.6.2でそれをプログラムしました。私はちょうどそれをコピーして貼り付けることが起こるたびに推測します。助けてくれてありがとう! –

関連する問題