これはチェック ディジットの演習です。
A=str(56784321)
for x in [0,2,4,6]:
B = int(A[x])*2
if len(str(B))==2:
B = int(str(B)[0])+int(str(B)[1])
print (B)
出力:
1
5
8
4
さらにコードを使用して 4 つを一緒に追加するにはどうすればよいですか?
コードに最小限の変更を加えるだけで、Pythonジェネレーターを使用できます。良い参考資料として、この質問を参照してください。
def split_str(A):
for x in [0,2,4,6]:
B=int(A[x])*2
if len(str(B))==2:
B= int(str(B)[0])+int(str(B)[1])
yield B
A=str(56784321)
for f in split_str(A):
print f
print 'Sum is', sum(split_str(A))
版画:
1
5
8
4
Sum is 18