我是编程新手,在我的课堂上,我必须编写一个比较2个列表并打印list1(而不是list2)中内容的函数,反之亦然。作业给出了以下示例:
Input:
english=['eve','beatrice','tim','tom']
math=['tim','tom','mary','fiona']
Output:
Names in english, but not in math: beatrice, eve
Names in math, but not in english: fiona, mary
这是我编写的代码:
english = ['eve', 'beatrice', 'tim', 'tom']
math = ['tim', 'tom', 'mary', 'fiona']
list3 = []
list4 = []
def compare_lists(list1, list2):
for name in list1:
if name not in list2:
list3.append(name)
print('Name in', list1, 'but not in', list2,':', ', '.join(list3))
for name in list2:
if name not in list1:
list4.append(name)
print('Name in', list2, 'but not in', list1,':', ', '.join(list4))
compare_lists(english, math)
哪个输出如下:
Name in ['eve', 'beatrice', 'tim', 'tom'] but not in ['tim', 'tom', 'mary', 'fiona'] : eve, beatrice
Name in ['tim', 'tom', 'mary', 'fiona'] but not in ['eve', 'beatrice', 'tim', 'tom'] : mary, fiona
所以我的问题是,如何在不打印变量内容的情况下打印变量名称?我唯一想到的就是在print语句的字符串部分中包含变量名称,但是只有在两个列表具有这些确切名称的情况下,它才有效。
谢谢。