2017-09-21 1 views
0

HELP!私はこのpythonスクリプトがついています。だから、基本的に私は、3つの変数すべてに対してユーザーから受け取った入力があるときに、プログラムのコードの最初の部分を実行したい。、elif、pythonの入力の3つの変数に基づいて印刷する場合

私は基本的に持っているとしようとしていました。 aで、ダッシュでb、そして。 cでこれらのprint文を実行します。それ以外のことは以下の通りです。注:最初のコードは、他のコードとは異なる印刷ステートメントを持っています。私はそれがa、b、cに基づいてコードの最初の部分をすべて実行することを望みます。ヘルプ

コード

a = raw_input("Enter ip address: ") 
b = raw_input("Enter range: ") 
c = raw_input("Enter network: ") 

#should print ip adress, range, and network combined 
if '.' in a + '-' in b + '.' in c: 
    ips = b.split('-') 
    print 'config firewall address\n','edit "ip-' + str(a) + '"' 
    print 'set subnet ' + str(a) + '/32' 
    print 'next' 
    print 'edit "ip-' + str(b) + '"' 
    print ('set type iprange') 
    print ('set start-ip '+ips[0]) 
    print 'set end-ip '+ips[1] 
    print 'next' 
    print 'edit "net-' + str(c) + '"' 
    print 'set subnet ' + str(c) + '' 
    print 'next' 
    print 'end' 

出力

ユーザー入力に基づいて、コードの実行の残りの部分を感謝しています。

#SHOULD print ip adress, range, and network combined 
Enter ip address: 10.203.1.10 
Enter range: 10.228.50.88-10.228.50.91 
Enter network: 172.27.0.0/16 
config firewall address 
edit "ip-10.203.1.10" 
set subnet 10.203.1.10/32 
next 
end 

私は最後の出力をそのようにしたくありません。これは私が望む出力です。

Enter ip address: 10.203.1.10 
Enter range: 10.228.50.88-10.228.50.91 
Enter network: 172.27.0.0/16 
config firewall address 
edit "ip-10.203.1.10" 
set subnet 10.203.1.10/32 
next 
edit "ip-10.228.50.88-10.228.50.91" 
set type iprange 
set start-ip 10.228.50.88 
set end-ip 10.228.50.91 
next 
edit "net-172.27.0.0/16" 
set subnet 172.27.0.0/16 
next 
end 

私は何をする必要がありますか?

+1

あなたはプログラムを実行していますか?または、手動で希望の出力を与えていますか? 'if 'を使って試してみてください。 aとbと '〜'の ' - 'また、インデントも混乱しています – Confused

+0

実行中ですが、どうしたいのですか?それは入力を印刷しますが、a、b、cが真であるか、ピリオドやダッシュが含まれていることに基づいて実行したいと思います。 –

答えて

0

あなたは、複数の条件に該当するかどうかをチェックし、代わりにしたい場合:

if '.' in a + '-' in b + '.' in c:

を...あなたが使用する必要があります。

if all(['.' in a, '-' in b, '.' in c]):

...か...

if '.' in a and '-' in b and '.' in c:

また、コードを正しくインデントする必要があります。

+0

完璧!これはまさに私が達成したかったことです。私はPythonの初心者なので、複数の条件をテストする方法を知らなかっただけです。私は2週間前に言語を学び始めました。 –