|  | 
 
| 
class C:
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  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]
 
请注意,我根据您提供的代码进行了相应修改来解决问题。如果还有其他疑问,请随时提问。
如果回答对你有帮助,请给我一个最佳答案!     | 
 |