【问题标题】:Python printing - For loop [duplicate]Python打印 - For循环[重复]
【发布时间】:2018-02-04 21:19:59
【问题描述】:

我有这个功能可以打印出1100 之间的所有奇数。我想要一个逗号,,除了最后一个数字之外的所有数字99

for i in range(1,100,2):
    print(str(i), end=',')

我得到了什么:

1、3、5、7、9、11、13、15 ... 97、99,

我想要什么:

1、3、5、7、9、11、13、15 ... 97、99

【问题讨论】:

  • 另外,print(*range(1, 100, 2), sep=', ')

标签: python formatting


【解决方案1】:

您可以使用str.join 在值之间注入分隔符,您可以使用如下生成器表达式创建分隔符

>>> ', '.join(str(i) for i in range(1,100,2))
'1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99'

【讨论】:

  • 非常感谢!我正在寻找一种方法来做到这一点(见下文),但它不起作用。不要以为我明白。 for i in range(1,100,2): print(', '.join(str(i))
【解决方案2】:

字符串 = ""

对于范围内的 i(100):

if i == 99:

    string = string + str(i)

else:

    string = string + str(i) + ","

打印字符串

【讨论】:

  • 是的,但我希望所有数字都在同一行。像 --> 1, 3, 5, 7, 9, 11, 13, 15 ... 97, 99
  • 我编辑它....抱歉我的网站有问题...它有效吗?
  • 是的,它有效,我能理解你的所作所为!谢谢!
  • :) 有美好的一天!
猜你喜欢
  • 1970-01-01
  • 2020-06-18
  • 1970-01-01
  • 1970-01-01
  • 2015-06-12
  • 2013-03-28
  • 2015-12-29
  • 2021-09-24
  • 2020-10-18
相关资源
最近更新 更多