在Python 3上,我试图编写一个函数format_list(items)
,它接受包含1或2个字符串元素的列表items
并返回包含这些元素的字符串。
假设传递的列表将始终包含一个或两个元素(即,它不会为空,并且不会包含两个以上的元素)。
条件是:
所以print(format_list(['abc']))
会产生:
abc
而print(format_list(['Dave', '14']))
会产生:
Dave | 14
我不知道从哪里开始......
答案 0 :(得分:1)
这听起来像是家庭作业,所以有一些线索可以让你前进:
% formatting
(例如"Hello %s!" % some_var
- > "Hello World!"
if some_var == "World"
)
len(some_list)
- >列表中的项目数
哦,因为我不想查一查:
"%10s" % 'word'
- > ......word
(点是空格)
"%-10s" % 'word'
- > word......
答案 1 :(得分:0)
def format_list(l):
if len(l)==1: return l[0]
else:
return '{:<10}|{:>10}'.format(l[0],l[1])
for l in [['abc'],['Dave', '14']]:
print(format_list(l))
打印:
abc
Dave | 14
答案 2 :(得分:-1)
def format_list(my_list)
try:
return my_list[0].ljust(10) + '|' + my_list[1].rjust(10)
except IndexError: return my_list