|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
class C:
def __init__(self, *args):
if not args:
print("并没有传入参数")
else:
print("传入了 %d 个参数,分别是:" % len(args),end = '')
for each in args:
print(each, end=' ')
b = C(1,3,5,6,"E")
为什么打印的是传入了 5 个参数,分别是:1 3 5 6 E 程序运行结束(1排)
而不是 传入了 5 个参数,分别是:(两排)
1 3 5 6 E 程序运行结束
问题出在 print("传入了 %d 个参数,分别是:" % len(args),end = '')这行代码上。根据您给出的代码,您使用了逗号 end = ''来指定 print函数输出结束时的字符,默认情况下是换行符 \n。然而,在您的代码中,您使用了空字符串 ''作为结束字符,导致输出在同一行上。
要使输出在两行上,您需要将 end = ''改为默认值 end = '\n',即不指定 end参数:
- class C:
- def __init__(self, *args):
- if not args:
- print("并没有传入参数")
- else:
- print("传入了 %d 个参数,分别是:" % len(args), end='\n')
- for each in args:
- print(each, end=' ')
- b = C(1, 3, 5, 6, "E")
复制代码
这样修改后,输出应该符合您的预期结果:
[/code]
传入了 5 个参数,分别是:
1 3 5 6 E
程序运行结束
[/code]
请注意,我根据您提供的代码进行了相应修改来解决问题。如果还有其他疑问,请随时提问。
如果回答对你有帮助,请给我一个最佳答案! 
|
|