2016-07-06 13 views
0

シーケンスパターンを作成したいと思います。たとえば、数字が123です。 1が第1のパターン、2が第2、3が第3のパターンである。整数パターンの作成方法は?

# Assign all patterns. 
First = 1 
Second = 2 
Third = 3 


# Make a loop 
for x in xrange(1, 100): 
    print(Second) 

これは単に秒印刷し、私はそれがすべての2整数の後に番号を印刷したいです。例えばので

1 
2 - This is pattern 2 
3 
4 - This is pattern 2 
5 
6 - This is pattern 2 
7 
... 

どのように私はこのシーケンスを実現するだろうか?だから私は整数のような整数のパターンを作ることができます2とすべての2の整数の後に、パターン2整数が返されたことを出力します。

答えて

2

xrangeには、ステップパラメータがあります。 documentationを参照してください。

patterns = [First, Second, Third] 
for x in xrange(1, 100): 
    print(patterns[x % 3]) 

を唯一のサードを印刷するには:連続してパターン1、2と3を印刷するには

for x in xrange(1, 100, 2): 
    print(Second) 

for x in xrange(1, 100): 
    if x % 3 == 0: 
     print(Third) 
+0

ありがとうございます!より多くの議論を追加できますか?だから私は2つのステップを行うことができます。 (xrange x(1、100、2、3)): – ShellRox

+0

2つのステップで何を意味するのか分かりません... 'xrange'は、step引数として1つの整数しか期待していません。 –

+0

@ShellRoxそれはどういう意味ですか?値を '2 'で、それ以外で' 3'で増分したいですか?手動で行う必要があります。 – Bakuriu

2

あなたはこのようなmodulo operator(%)if statementを追加する必要があります。

# Assign all patterns. 
First = 1 
Second = 2 
Third = 3 


# Make a loop 
for x in xrange(1, 100): 
    print x 
    if x % 2 == 0: 
     print(Second) 
+0

ありがとう!ここでは2パターンしかないので、 '1'と' 2'は3を割り当てることができますか? – ShellRox

+0

どういう意味ですか? 3ステップごとに3枚印刷しますか? 'x%3 == 0なら'を追加する必要があります。 – Navid777

+0

私はそれを試しましたが、プログラムはステップ3があることを知らないので、どのように割り当てることができますか? – ShellRox

関連する問題