2016-09-22 8 views
0

ごめんなさい、Pythonに少し新しかったので、私に同行してください。LIStの印刷物は、挿入されたものと一致しません

私は、SとGのためにPiのX桁の数字をとる小さなPythonプログラムを作成し、winsound.beeps(質問しないでください)として再生しようとしています。

ビープ音が鳴り、リストにPiが挿入されました。リストを印刷するとき、それは正しくありません。誰かが私が間違ったことを指摘できますか?

3.141592654 
3.141592654 
3141592654 
[3, 1, 4, 1, 5, 9, 2, 6, 5, 4] 
1 
1 
5 
1 
9 
4 
4 
2 
9 
5 

はなぜループのないパイから印刷されたリストで、次のように

#!/usr/bin/python 
from mpmath import * 

import winsound 

mp.dps = 10 

floatPi = mp.pi 
print(floatPi) 

conPi = str(floatPi) 
print(conPi) 

strPi = conPi.replace(".", "") 
print(strPi) 

listPi = [] 

for digit in strPi: 
    listPi.append(int(digit)) 

print listPi 
#winsound.Beep(floatPi*100, 300) 

for number in listPi: 
    print(listPi[number]) 
    #winsound.Beep(listPi[number]*100, 300) 

結果は?

+0

'for listPiの番号:'あなたはそれがどういうのですか? – njzk2

答えて

0

ループの最後として、以下を使用します。forループ

for number in listPi: 
    print(number) 

リスト一つずつであなたの内容を提供します。あなたはリストを再び見上げる必要はありません。

+0

あなたは最高です、ありがとう。 –

+0

お寄せいただきありがとうございます。あなたが問題を解決すれば答えを受け入れることができます。 –

0

コードが

for number in listPi: 
    print(number) 

原因は、ここではあなたはそれがprint(listPi[number])ある場合例えば、それは本質的であるlisPi[3]を印刷し最初のケースを取り、それらに関連付けられたキーではないリストの内容を反復処理され、あるべき1

そして、あなたは、C/C++/Javaからであれば、

for i in range(0,len(listPi),1): 
    print(listPi[i]) 

これは、よりfamilliarになります。