带你学习Python中优雅的for循环

发表于:2021-3-01 09:25

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:聆听世界的鱼    来源:Linux公社

  For循环是必不可少的编程技能。本文让我们了解如何正确在Python中使用它们。
  像任何其他编程语言一样,Python循环是避免编写重复代码的好方法。但是,与Python的while循环不同,for循环是确定的控制流语句,可为您提供对系列中每个项目的更多权限。
  无论您是Python初学者还是已经有一些使用它的经验,扎实地了解它的for循环都是解决与数组相关的问题的关键。在这里,我们来看看Python的for循环是如何工作的,以及一些如何使用它来解决编码难题的示例。
  For循环如何在Python中工作
  Python的for循环通过遍历数组的序列来工作。从本质上讲,它在处理诸如字符串,列表,元组,字典或集合之类的序列时很有用。一个在关键字通常遵循了Python中循环。一个用于循环在所有的编程语言相似的特点。例如,尽管存在语法差异,但是Java的for循环的特性类似于Python的for循环的工作方式。Python for循环的常用语法如下:
  for new_variable in parent_variable: 
      execute some statements 
  如前所述,与while循环不同,for循环功能更强大,因为它在流中提供了更多的控制。如何使用Python的For循环:实际示例现在,让我们看一些如何在Python中使用for循环的实际示例。下面的代码段输出列表中的每个项目:
  release = ["linuxmi", "ubuntu", "centos", "debian", "redhat"] 
  for i in release: 
      print(i) 
  您还可以修改上面的代码以输出具有字母“ a”的任何项目:
  release = ["linuxmi", "ubuntu", "centos", "debian", "redhat"] 
  for i in release: 
  if "a" in i: 
  print(i)
  Python中 的for循环也采用直接的else语句:
  b=[2, 3, 5] 
  for i in b: 
      print(i) 
  else: 
      print("循环结束") 
  您也可以使用break语句来更改for循环的流程:
  b=[2, 3, 5] 
  for i in b: 
      if i>3: 
          break 
      print(i) 
  您还可以使用continue关键字的循环:
  b=[2, 3, 5] 
  for i in b: 
      if i>3: 
          continue 
      print(i)
  如下图:
  在Python中使用带有列表和字符串文字的for循环
  现在看一下下面的代码,输出1到100之间的所有正整数。为此,您首先要使用Python的内置range函数创建1到100之间的数字列表:
  for x in range(1, 101): 
      print(x) 
  您可以通过引入条件语句来输出1到100之间的所有奇数来修改该代码块:
  for x in range(1, 101): 
      if x%2==1: 
          print(x) 
  但是,您也可以在上面代码的输出中创建一个“ 2 by output”乘法表。要做到这一点,你只需要再添加一些如下这样的语句,如下所示:
  for x in range(1, 101): 
      if x%2==1: 
          print(x, "x", 2, "=", x * 2) 
  如下图: 
  现在,您已经了解了for循环如何使用整数列表。让我们看一下如何在字符串中使用for循环。
  下面的代码返回句子中每个字符串的序列:  
  a = "linuxmi" 
  for i in a: 
      print(i) 

  我们还可以使用for循环来计算变量a中的字符串(包括空格)的数量:
  a = ["welcome linuxmi.com"] 
  for i in a: 
      print(i.count(''))
  但是,您也可以将for循环放在单独的变量中,并通过像上面这样重写代码来获得类似的结果:
  a = ["welcome linuxmi.com"] 
  c=[b.count('') for b in a] 
  print(c)

  注意:要获取字符计数,请确保count关键字后面的括号中的引号之间没有空格。
  您还可以修改上面最后两个代码片段中的每一个,以使用for循环创建一个简单的单词计数器。在这种情况下,你需要做的是在括号中的每个引号之间插入一个空格:
  a = ["welcome linuxmi.com"] 
  for i in a: 
       print(i.count(' ') + 1) 
  如下图: 
  就像您对字符计数所做的一样,您还可以通过将for循环放在这样的变量中来重写上面的单词计数代码:
  a = ["welcome linuxmi.com"] 
  c=[b.count(' ') + 1 for b in a] 
  print(c) 
  请一定要注意括号中的引号之间的单个空格。
  如下图:
  对数组使用Python For循环
  您也可以使用for循环从数组中获取特定元素。
  假设您有一组水牛buffalo,“健康healthy”动物的值为“是Yes”,而“不健康”水牛buffalo的值为“否No”。每只水牛buffalo都有一个唯一的名称,您想隔离所有患病的水牛buffalo。
  您可以使用for循环输出所有不健康的水牛buffalo。要查看在这种情况下for循环的有用性,下面的代码输出数组中所有不健康的水牛buffalo的名称:
  array = [{"name":"buffalo1", "healthy":"Yes"}, 
   {"name":"buffalo3", "healthy":"No"},  
   {"name":"buffalo4", "healthy":"Yes"},  
   {"name":"buffalo5", "healthy":"Yes"},  
   {"name":"buffalo8", "healthy":"No"}, 
   {"name":"buffalo7", "healthy":"No"}, 
   {"name":"buffalo9", "healthy":"No"} 
   ] 
  for buffalos in array: 
        if buffalos["healthy"]=="No": 
            print("Quarantine", buffalos["name"])
  如下图: 
  OK,本文就这样,希望对你有所帮助!

      版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号