2017-04-18 2 views
-4

どのように特定の条件が真である場合には、関数の呼び出しをスキップする方法を教えていただけますか?この条件が真であれば、次の関数呼び出しをスキップしなければならない場合はif r[3]=='Device':となり、この条件が真でなければ次の関数呼び出しを実行する必要があります。コードはif文の真偽に基づいて関数呼び出しをスキップする方法は?

最初の関数のようになる:

def sei1(r): 
     if r[4]=='Device': 
      print(r[1],r[2],r[3]) 
      if r[7]=='Device': 
       print(r[5],r[6]) 
      if r[7]=='list': 
       print(r[5],r[6]) 
      if r[8]=='Device': 
       print(r[5],r[6],r[7]) 
      if r[8]=='list': 
       print(r[5],r[6],r[7]) 
     def se(r): 
     if r[5]=='Device': 
      print(r[1],r[2],r[3],r[4]) 
      if r[8]=='Device': 
       print(r[6],r[7]) 
      if r[7]=='list': 
       print(r[6],r[7]) 
      if r[8]=='Device': 
       print(r[6],r[7],r[8]) 
      if r[8]=='list': 
       print(r[6],r[7],r[8]) 
     sei1(r) 
     se(r) 

R [4] ==「デバイス」はその後、次の関数が呼び出す真である場合、これは2つの機能であり、何が必要なのであるSE(R)実行してはいけません。

私はすべての提案が高く評価されています。 ありがとうございます

+0

使用 '='何かが等しくないかどうかをチェックします。 – meyer9

+0

いくつかのコードを教えてください。 –

+0

'r [3] == 'デバイス'の場合: pass' –

答えて

4

あなたは次のように単純にチェックする必要があります!

if r[3]!='Device': # function_call is a function which will only execute when r[3] is not equal to 'Device' 
    function_call() 

OR

if r[3]=='Device': 
    pass 
else: 
    function_call() 
1

Skipを実行していないのですか?その場合は、単純にうまくいくはずです。

if r[3] != 'Device': 
    func1() 
    print('function is executed!') 
else: 
    print('function is NOT executed!') 
+0

はいいいえ実行しないでください –

0
if r[3]=='Device': 
    pass 
else: 
    function() 
関連する問題