为什么“for i in range”中的“i”?

新手上路,请多包涵

我是编程新手,Python 是我学习的第一门语言。我认为这通常非常简单和合乎逻辑,也许这就是为什么这个小的理解问题让我发疯……

为什么在说明范围函数时,学习材料中经常使用“i”?当范围函数处理数字时,使用随机数对我来说似乎更合乎逻辑。

请把我从痛苦中释放出来。

原文由 CrunchingMyBrain 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

一点额外的帮助!

问我们为什么使用 i 有点像问为什么这么多人在数学问题中使用字母 x。这主要是因为 i 只是一个非常容易用来表示循环中当前增量的变量。

我还认为您对循环中 i 的位置感到困惑。当你使用范围循环时,你是说你想从一个数字开始一个一个地计数,直到你碰到另一个数字。通常它看起来像这样

for i in range(0, 5):

这意味着我想从 0-4 计数并将 i 设置为我当前所在的当前循环。

测试这个的好方法。

 for i in range(0, 5):
  print("i currently equals: ", i)

结果将是

i currently equals: 0
i currently equals: 1
i currently equals: 2
i currently equals: 3
i currently equals: 4

在您的问题中,您问为什么不将 i 设置为一个数字,这是因为您不能将数字用作变量名。 Python 不能接受你的要求,但如果可以的话,它看起来像这样

for 54 in range(0, 5):
  print(54)

尝试多阅读一些关于什么是变量以及如何在编程中正确使用它们的内容。 https://en.wikibooks.org/wiki/Think_Python/Variables,_expressions_and_statements

最后祝你在成为程序员的道路上好运!对我们许多人来说,编码是这个世界上最令人兴奋的事情之一,我希望有一天你也会有同感!

原文由 wezley 发布,翻译遵循 CC BY-SA 4.0 许可协议

在这里 回答。

i 和 j 通常在相当多的数学中用作下标已有很长一段时间(例如,即使在高级语言出现之前的论文中,您也经常会看到诸如“Xi,j”之类的东西,尤其是在求和之类的东西中) .

当他们设计 Fortran 时,他们(显然)决定允许相同的,因此所有以“I”到“N”开头的变量默认为整数,所有其他变量为实数(浮点数)。对于那些错过它的人来说,这就是“上帝是真实的(除非声明为整数)”这个老笑话的来源。

大多数人似乎没有理由改变这一点。它广为人知和理解,而且非常简洁。每隔一段时间你就会看到一些精神病患者写的东西,他们认为这样的东西有真正的好处:

 for (int outer_index_variable=0; outer_index_variable < 10; outer_index_variable++) for (int inner_index_variable=0; inner_index_variable < 10; inner_index_variable++) x[outer_index_variable][inner_index_variable] = 0;

值得庆幸的是,这种情况很少见,现在大多数风格指南都指出,虽然长的、描述性的变量名可能很有用,但您并不总是需要它们,尤其是对于像这样的变量范围只有一两行代码的情况。

原文由 Gibin Ealias 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进