0

ユーザー入力からPythonを使用して数字の三角形を作成しようとしています。私はコードを書きましたが、Pythonで1つのことを行う方法がわかりません。それに応じて、print( "次の行")をそれぞれの行に変更したいと思います。それ、どうやったら出来るの?

コード:

numstr= raw_input("please enter the height:")
rows = int( )
def triangle(rows):
    for rownum in range (rows)
        PrintingList = list()
        print("Next row")
        for iteration in range (rownum):
            newValue = raw_input("Please enter the next number:")
            PrintingList.append(int(newValue))
            print() 

私のコードに間違いはありますか?または改善のための提案はありますか?教えてください..ありがとう...

4

4 に答える 4

1

コードを次のように変更できます。

numstr= raw_input("please enter the height:")
rows = int(numstr )
def triangle(rows):
  for rownum in range (rows):
      PrintingList = list()
      print "row #%d" % rownum
      for iteration in range (rownum):
          newValue = raw_input("Please enter the number for row #%d:" % rownum)
          PrintingList.append(int(newValue))
          print()

を使用するprint "%d" % myintと、整数を印刷できます。

于 2012-04-11T12:45:50.250 に答える
1

あなたの質問を理解したら、に変更print("Next row")してくださいprint("Row no. %i" % rownum)

%フォーマットコードがどのように機能するかを説明している文字列のドキュメントを読んでください。

于 2012-04-11T12:53:56.007 に答える
1

私はあなたのプログラムに望ましい振る舞いが何であるか正確にはわかりませんが、ここに私の推測があります:

numstr= raw_input("please enter the height:")

rows = int(numstr) # --> convert user input to an integer
def triangle(rows):
    PrintingList = list()
    for rownum in range (1, rows + 1): # use colon after control structure to denote the beginning of block of code        
        PrintingList.append([]) # append a row
        for iteration in range (rownum):
            newValue = raw_input("Please enter the next number:")
            PrintingList[rownum - 1].append(int(newValue))
            print() 

    for item in PrintingList:
      print item
triangle(rows)

そしてここに出力があります:

please enter the height:3
Please enter the next number:1
()
Please enter the next number:2
()
Please enter the next number:3
()
Please enter the next number:4
()
Please enter the next number:5
()
Please enter the next number:4
()
[1]
[2, 3]
[4, 5, 4]
于 2012-04-11T12:55:01.887 に答える
0
n = int(input())

for i in range(n):
    out=''
    for j in range(i+1):
        out+=str(n)
    print(out)

これにより、次のように出力されます。

>2

2
22

>5

5
55
555
5555
55555

これはあなたが探していたものですか?

于 2018-01-08T07:34:22.677 に答える