2017-07-02 3 views
-4

このようなif文の後に空白行を取り除くにはどうすればよいですか?なぜPythonに何も入力できない空白行がありますか?

>>> import mcpi.minecraft as minecraft 
>>> import mcpi.block as block 
>>> import time as time 
>>> mc=minecraft.Minecraft.create() 
>>> mc 
<mcpi.minecraft.Minecraft instance at 0x767e2f58> 
>>> block.GOLD_BLOCK=block.GOLD_BLOCK 
>>> while True: 
...  x,y,z=mc.player.getPos() 
...  block_beneath=mc.getBlock(x,y-1,z) 
...  if block_beneath != block.GOLD_BLOCK: 
...    mc.setBlock(x,y-1,z,block.GOLD_BLOCK) 
... 

...の後には、空白行になり、もうコードを挿入できません。

これは愚かな質問のようですが、おそらく簡単な修正ですが、修正方法はわかりません。すべての助けをありがとう!

すべてのお返事ありがとうございます!私はそれを見渡し、あなたが言うようなことを試してみましょう! :D

+0

私は...の後に行って、ちょうど空白になりました – EofTheN

+1

VIMのようなエディタを使ってコードを書いてから、コマンドプロンプトを使って実行してください。それは、あなたがcmdでpythonを始めて、あなたのコードを書くようになったようです。 cmdを開いて、 'vim file.py'と入力します。これは、名前ファイルを持つpythonファイルを作成し、それを使用して実行することができます: 'python file.py' – sera

答えて

3
while True: 

これは無限ループを開始します。最後の...の後にEnterキーを押すと、ループが実行を開始し、終了しません。 REPLは、入力するコードの実行を終了してから、それ以上のコードを入力する必要があります。

ほとんどの場合、コードをファイルに入れる必要があります。これにより、コードをより簡単に編集して変更を修正したり、機能を追加することができます。私はあなたがファイルにPythonコードを保存することについてもっと学ぶことをお勧めします。

+0

それ以降のコードを入力する方法はありますか?あるいは、新しいウィンドウを開いて、もう一度プロセスを繰り返して、他のことをしなければならないのですか? – EofTheN

+1

@ EffTheN。 REPLは、コードを実行する前にコードの実行を終了してから、コードを入力する必要があります。新しいウィンドウを開くと、そこに入力したコードは最初のウィンドウとは完全に独立したものになります。無限ループは、あなたが間違っている可能性が高いことを示します。あなたは、あなたが望むものを達成するためには、おそらく異なる方法を見つけ出す必要があります。 –

0

まず、なぜあなたはシェルでそれをやっていますか? IDLEをお持ちの場合は、シェルにCtrl + Nキーを押して新しいファイルを作成してください。

そして、ここに:)をコピー&ペーストするための新しいファイル内のコードです:

import mcpi.minecraft as minecraft 
import mcpi.block as block 
import time as time 
mc=minecraft.Minecraft.create() 
block.GOLD_BLOCK=block.GOLD_BLOCK 
while True: 
    x,y,z=mc.player.getPos() 
    block_beneath=mc.getBlock(x,y-1,z) 
    if block_beneath != block.GOLD_BLOCK: 
     mc.setBlock(x,y-1,z,block.GOLD_BLOCK) 

私はこれで助けを願って! )

関連する問題