使用已分配的变量打印

时间:2015-01-26 23:08:09

标签: python

我正在学习Python,并且在打印已经分配的变量时遇到了一些麻烦。例如:

编写Python语句,使用已分配的变量 first,middle, last:

打印下一个格式化的输出
>>>first = 'Marlena'
>>>last = 'Sigel'
>>>middle = 'Mae'
a) Sigel, Marlena Mae
b) Sigel, Marlena M.
c) Marlena M. Sigel
d) M. M. Sigel

---部分a)我得到了这个:

>>> print (last, first, sep=' , ' +  middle)
Sigel , MaeMarlena

如何在Mae和Marlena之间获得空间?

对于b,c和d,如何在不将其更改为字符串的情况下执行此操作?

4 个答案:

答案 0 :(得分:2)

我认为最好的方法是使用python' format。这是Guido更喜欢python3的格式。

a)Sigel,Marlena Mae

print(u"{0}, {1} {2}".format(last, first, middle))

b)Sigel,Marlena M。

print(u"{0}, {1} {2}.".format(last, first, middle[0]))
c)Marlena M. Sigel

print(u"{0} {1}. {2}".format(first, middle[0], last))

d)M. M. Sigel

print(u"{0}. {1}. {2}".format(first[0], middle[0], last))

答案 1 :(得分:0)

当涉及到print函数中的参数时,Python将字符串作为默认类型。使用此:

# Sigel, Marlena Mae
print(", ".join([last,first+" "+middle]))

# Sigel, Marlena M.
print(", ".join([last,first+" "+middle[0]+"."]))

剩下的应该是可以理解的!

如果您不想进入“加入”功能并希望将其作为新的Python学习者完成,那么更简单的版本:

# Sigel, Marlena Mae
print(last+", "+first+" "+middle)

# Sigel, Marlena M.
print(last+", "+first+" "+middle[0]+".")

答案 2 :(得分:0)

first='Marlena'
middle='Mae'
last='Sigel'

print('%s, %s %s' % (last, middle, first))
print('%s, %s %s.' % (last, first, middle[0]))
print('%s %s. %s' % (first, middle[0], last))
print('%s. %s. %s' % (first[0], middle[0], last))

答案 3 :(得分:0)

.format的其他方式

print "{}, {}  {}".format(last,first,middle)
print "{}, {}  {}.".format(last,first,middle[0])
print "{} {}.  {}".format(first,middle[0],last)
print "{}. {}.  {}".format(first[0],middle[0],last)