使用python将三个字符串连接到一个块中

时间:2016-03-29 14:50:01

标签: python

我有三个字符串。每个字符串都有名称,地址和邮政编码。

第一个字符串:

Joao Miesler
Bill Gates
Kevin Mitnick

第二个字符串:

Street kit number 3
Street foo number 2
Street OOk number 4

第三个字符串:

2415-568
1452-856
1234-568

我希望输出类似于:

Joao Miesler
Street kit number 3
2415-568

Bill Gates
Street foo number 2
1452-856

Kevin Mitnick
Street OOk number 4
1234-568

此信息摘自excell工作表,如下所示:

#Get columns name
for i in range(13, high_row, 1):
    nome = sheet['E%s' % i].value


#Get column adresses
for i in range(13, high_row, 1):
    morada = sheet['F%s' % i].value

#Get Postal Code column
for i in range(13, high_row, 1):
    cp = sheet['G%s' % i].value
你能指出我正确的方向吗?隧道尽头的一些灯光会很好。

在此之后我想制作A4纸并将输出分成正方形。我可以使用任何好的库来实现它吗?

4 个答案:

答案 0 :(得分:0)

假设您的数据是多行字符串:

names = """Joao Miesler
Bill Gates
Kevin Mitnick"""

Pythonic的方法是对行列表进行操作并使用zip加入它们:

names = names.split('\n')
addresses = addresses.split('\n')
phone_numbers = phone_numbers.split('\n')

for name, address, phone in zip(names, addresses, phone_numbers):
   print('%s\n%s\n%s\n' % (name, address, phone))

答案 1 :(得分:0)

如果您使用列表单独或一起存储3个字符串的每一行,您可以选择使用基本列表功能打印哪些行。

所以它看起来像:

list1 = ['Joao Miesler', 'Bill Gates', 'Kevin Mitnick']
list2 = ['Street kit number 3', 'Street foo number 2', 'Street OOk number 4']
list3 = ['2415-568', '1452-856', '1234-568']

print(list1[0],\n,list2[0],\n,list3[0])

答案 2 :(得分:0)

为什么有三个循环可以只有一个?

for i in range(13, high_row, 1):
    nome = sheet['E%s' % i].value
    morada = sheet['F%s' % i].value
    cp = sheet['G%s' % i].value

    data = [nome, morada, cp]
    print('\n'.join(map(str,data)))

答案 3 :(得分:0)

假设这些是多行字符串除以\n并且所有字符串都具有相同的长度

s1a = s1.split('\n')
s2a = s2.split('\n')
s3a = s3.split('\n')

newString = '' 
for i in range(len(s1a)):
    newString += (s1a[i]+'\n')
    newString += (s2a[i]+'\n')
    newString += (s3a[i]+'\n')
    newString += '\n'