我觉得这段代码太过分了——怎么能更短?我是初学者,所以请耐心等待。
我的代码:
#printtable() function - will take string list and display in rjustified table
tabledata = [['apples', 'oranges', 'cherries', 'banana'],
['Alice', 'Bob', 'Carol', 'David'],
['dogs', 'cats', 'moose', 'goose']]
def printtable():
colwidths = [0] * len(tabledata)
strlen = 0
#find parameter for rjust
for i in range(len(tabledata)):
for k in range(len(tabledata[i])):
wordlength = (len(tabledata[i][k]))
if wordlength > strlen:
colwidths[i] = wordlength
strlen = wordlength
maxword = max(colwidths)
#print as table : 'invert'
x=0
while x<int(len(tabledata[0])):
for i in range(len(tabledata)):
print(tabledata[i][x].rjust(maxword, ' '), end=''),
x+=1
print('\n')
printtable()
一般来说,我怎样才能开始更有效地学习编码?我在想我可以提前开始绘制流程图——因为通常我只是开始写作并当场改变东西。我觉得我所有的代码都很丑陋,所以任何提示都值得赞赏。谢谢!