0

1 つのリスト内のすべての項目を、2 番目のリスト内の対応するインデックスにどのように配置できるか疑問に思っていました。これまでの私のコードは次のとおりです。

letters=['a','ab','abc','abcd','abcde','abcdef','abcdefg','abcdefgh','abcdefghi','abcdefghij']
numbers=[1,2,3,4,5,6,7,8,9,10]

for x in range(len(letters)):
    print letters[x]+"----------",numbers[x]

これは私が得る出力です:

a---------- 1
ab---------- 2
abc---------- 3
abcd---------- 4
abcde---------- 5
abcdef---------- 6
abcdefg---------- 7
abcdefgh---------- 8
abcdefghi---------- 9
abcdefghij---------- 10

これは私が望む出力です:

a---------- 1
ab--------- 2
abc-------- 3
abcd------- 4
abcde------ 5
abcdef----- 6
abcdefg---- 7
abcdefgh--- 8
abcdefghi-- 9
abcdefghij- 10
4

4 に答える 4

3

文字列の書式設定を使用できます。

for left, right in zip(letters, numbers):
    print '{0:-<12} {1}'.format(left, right)

そして出力:

a----------- 1
ab---------- 2
abc--------- 3
abcd-------- 4
abcde------- 5
abcdef------ 6
abcdefg----- 7
abcdefgh---- 8
abcdefghi--- 9
abcdefghij-- 10
于 2013-04-28T21:34:27.783 に答える
0

を使用したこのようなものstring.formatting

def solve(letters,numbers):
    it=iter(range( max(numbers) ,0,-1))
    for x,y in zip(letters,numbers):
        print "{0}{1} {2}".format(x,"-"*next(it),y)
   ....:         

In [38]: solve(letters,numbers)
a---------- 1
ab--------- 2
abc-------- 3
abcd------- 4
abcde------ 5
abcdef----- 6
abcdefg---- 7
abcdefgh--- 8
abcdefghi-- 9
abcdefghij- 10
于 2013-04-28T21:34:16.487 に答える
0
letters=['a','ab','abc','abcd','abcde','abcdef','abcdefg','abcdefgh','abcdefghi','abcdefghij']

for c,x in enumerate(letters, start=1):
    print x+("-"*(10-c))+" %s" % c

a--------- 1
ab-------- 2
abc------- 3
abcd------ 4
abcde----- 5
abcdef---- 6
abcdefg--- 7
abcdefgh-- 8
abcdefghi- 9
abcdefghij 10
于 2013-04-28T21:35:59.797 に答える
0
letters=['a','ab','abc','abcd','abcde','abcdef','abcdefg','abcdefgh','abcdefghi','abcdefghij']
numbers=[1,2,3,4,5,6,7,8,9,10]

for x in range(len(letters)):
    print '{0:11}{1}'.format(letters[x],numbers[x]).replace(' ','-');


a----------1
ab---------2
abc--------3
abcd-------4
abcde------5
abcdef-----6
abcdefg----7
abcdefgh---8
abcdefghi--9
abcdefghij-10
于 2013-04-28T21:46:12.037 に答える