当前位置: 首页 > 知识库问答 >
问题:

缺少输出,在Python中使用range()

盖泽宇
2023-03-14

在我正在阅读的Python书籍中,我没有得到关于章节结束问题的用户输出。

问题是:

编写一个为用户计数的程序。让用户输入开始编号、结束编号和计数的数量。

这是我想出来的:

start = int(input("Enter the number to start off with:"))
end = int(input("Enter the number to end.:"))
count = int(input("Enter the number to count by:"))

for i in range(start, end, count):
    print(i)

在此输入之后,除以下情况外,不会发生任何事情:

Enter the number to start off with:10
Enter the number to end.:10
Enter the number to count by:10

共有2个答案

云慈
2023-03-14

记住范围(开始,停止,计数)start开始,但在停止之前结束。

所以range(10,10,10)将尝试生成一个从10开始,在10之前停止的列表。换句话说,列表中没有任何内容,并且永远不会到达print语句。

用其他数字再试一次:从5开始,在12之前停止,然后按2计数应该会得到更令人满意的结果。

秦宁
2023-03-14

range(10,10,10)将生成一个空列表,因为range构造了一个liststartstop独占,所以您要求Python构造一个list从10到10,但不包括10。10到10之间正好有0个整数,因此Python返回一个空列表。

In [15]: range(10, 10, 10)
Out[15]: []

没有任何东西可以迭代,所以循环中不会打印任何东西。

 类似资料:
  • 我刚刚在Ubuntu上重新安装了Docker,使用了官方指南:https://docs.Docker.com/engine/installation/linux/Ubuntulinux/ 有人知道是什么引起的吗?或者能帮我解决这个问题吗?我依赖于这个层ID,因为我正在收集一些关于层重用性的统计数据,所以我需要这个ID来正确显示。

  • 尝试使用python生成CGI屏幕。然而,当我从命令行运行它时,我总是得到一个错误,指出它在“print”content-type:text/html\r\n\r\n“行上缺少括号。非常感谢任何帮助。多谢了。

  • 初始数据: > ffmpeg 2.7.2版-静态 使用gcc 4.9.3构建(Debian 4.9.3-1) 配置:---启用gpl--启用-version3--禁用共享--禁用调试--启用运行时cpudetec--启用-libmp3lame--启用-libx264--启用-libx265--启用libwebp--启用libspeex--启用libvorbis--启用libvpx--启用libfr

  • 当我使用创建一个新的虚拟环境时,它会按照预期使用创建虚拟环境,但缺少: 到底是怎么回事?不应该有一个二进制文件吗?

  • 我试图从JTextField获取输入,并使用getText()在控制台上输出它。除了没有打印出最后一个字符外,它似乎还在工作。如果我输入“hello”,输出将是“hell”,如果我输入“hello there”,输出将是“hell ther”....缺少最后一个字符。`Public class Generator{ }`

  • 我正在重新设计我们公司的API以使用来自SQL Server的Snowflake。我们的第一个直接障碍是现有的SQL Server存储过程返回表输出,而Snowflake不允许这种类型的输出。我不想完全重新设计一切,所以我在想: null 我知道对于编码来说,使用python这样的东西会容易得多,但是,我不想维护另一个python应用程序,只用于在Snowflake中检索数据。