2016-11-25 7 views
-2

は、ここに私のスクリプトですながら:無効な構文真statemtn

def makeithappen(): 
    word="" 
    while True: 
     try: 
      word=inputText() 
     except: 
      print("Something happened inputText") 
     else: 
      if len(word)>0: 
       break 
      elif word!=str: 
       break 

いくつかの理由が、私は無効な構文エラーを取得し、私はなぜわかりません。

+1

あなたのコードは意味がありません。あなたが望む出力は何ですか? – Inconnu

+1

ちょうどあなたが知っている、stackoverflowはあなたの期限を気にしません。 –

+0

どちらの行ですか?スタックトレースを投稿できますか? – tdelaney

答えて

0
def makeithappen(): 
    word="" 
    while True: 
     try: 
      word=input() #is this supposed to be input()? 
     except: 
      print("Something happened inputText") 
     else: 
      if len(word)>0: 
       break 
      elif isinstance(word, basestring): #I never got the logic behind it 
       break 

私はこれがあなたがしたかったと思います。入力されたテキストが有効で(長さが0より大きい)、入力タイプがstrでない場合、終了します(python3の場合は常にfalseです)。

+1

型チェックの標準的な方法は、isinstance(word、str)またはより良いisinstance(word、basestring)です。 –

+0

変更されました。ありがとう、私は完全に忘れていた 'isinstance()' – Prajwal

0
#!/usr/bin/python 
# -*- coding: utf-8 -*- 

def makeithappen(): 
    word="" 
    while True: 
     try: 
      word=raw_input("Go:") 
     except: 
      print("Something happened inputText") 
     else: 
      if len(word)>0: 
       print("Hello!!") 
      elif word!=str: 
       print("Bye!!") 
       break 
makeithappen()