【问题标题】:* in print function in python* 在 python 的打印函数中
【发布时间】:2020-05-02 15:48:15
【问题描述】:
text = 'PYTHON'
for index in range(len(text)):
    print(*text[:index + 1])

print 函数中的 * 在 sys.stdout 上的字符之间产生一个空格。谁能告诉我它叫什么,它实际上是做什么的?

【问题讨论】:

    标签: python string printing stdout


    【解决方案1】:

    文本的 * 打印等同于打印print(text[0], text[1], ..., text[n]),这是打印每个部分之间有一个空格。 你可以做

    text = 'PYTHON'
    for index in range(len(text))
        print("".join(list(text)[:index + 1]))
    

    text = 'PYTHON'
    for index in range(len(text))
        print(*text[:index + 1], sep='')
    

    这将打印每个部分,中间没有空格。 输出

    P
    PY
    PYT
    PYTH
    PYTHO
    PYTHON
    

    【讨论】:

    • 谢谢 — 精彩的解释!!
    • 从 udemy 课程开始,然后在网上进行了大量自学,在过去的 4 年里,这是我的职业
    • 谢谢 — 有没有详细解释 python 的资源(比如创建字典时内存中究竟发生了什么以及其他事情)?
    • 这是我找到的最详细但不是最实用的课程[link]youtube.com/…
    【解决方案2】:

    它被称为星号。

    Asterisk 将列表中的所有项目作为单独的参数传递给 print 函数调用,我们甚至不需要知道列表中有多少参数。

    您可以在此处阅读更多信息: https://treyhunner.com/2018/10/asterisks-in-python-what-they-are-and-how-to-use-them/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-12-06
      • 1970-01-01
      • 2017-07-10
      • 1970-01-01
      • 1970-01-01
      • 2022-06-14
      相关资源
      最近更新 更多