Background:
When I do data cleaning, I want print my arg name and its value in lines. However args' name vary at length and so do their values. For clarity, I want align arg's name to the left and arg's value to the right in each line.
For instance, I want result like following:
Output:
Arg1 : value1
Arg2222222222222222: value2
Arg3 : value33333333333
Current method:
Suppose I have 3 args and 3 values.
name_list = ['Arg1','Arg2222222222222222','Arg3']
value_list = ['value1', 'value2', 'value33333333333']
Using following code, I can print it clearly.
Code:
name_list = ['Arg1','Arg2222222222222222','Arg3']
value_list = ['value1', 'value2', 'value33333333333']
padding1 = max(map(len, name_list))
padding2 = max(map(len, value_list))
print("padding1 = {}, padding2 = {}".format(padding1,padding2))
for num in range(len(name_list)):
print('{0}: {1}'.format(name_list[num].ljust(padding1), value_list[num].rjust(padding2)))
Output:
padding1 = 19, padding2 = 16
Arg1 : value1
Arg2222222222222222: value2
Arg3 : value33333333333
Question:
Can we use less code to achieve the same goal? Or, can we do it more specifically?
Thank you for your help, guys!