python for循环赋值问题

 更新时间:2021年06月03日 11:24:30   作者:喜欢吃布丁但是没有钱  
这篇文章主要介绍了python for循环赋值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

背景

写代码的时候,你会发现你的代码越写越多。

然而,功能需要也越来越多,然后你的冗余代码就多得不能再多了~~~怎么办,我太难了。

那就寻求一些高级写法,一般的高级写法都是尽可能地短。

另外,把重复的代码抽取出来,封装成函数,每次使用直接调函数即可。

For循环赋值

前提条件:我创建了一个road类,这个类里面有这些属性。我先初始化给road赋值,然后再把这些对象放到roadObjList集合里面。

目标:从roadObjList集合里面取出每个road对象的objectid值,然后放入到新的列表里面。

class road():
    def __init__(self,gid,objectid,name,width,direction,speed,type,snode,enode,length,startX,startY,endX,endY):
        self.gid= gid
        self.objectid = objectid
        self.name = name
        self.width = width
        self.direction = direction
        self.speed = speed
        self.type = type
        self.snode = snode
        self.enode = enode
        self.length =  length
        self.startX = startX
        self.startY = startY
        self.endX = endX
        self.endY = endY

写法一:

        objList = []
        for r in roadObjList:
            objList.append(r.objectid)

写法二:

objList = [r.objectid for r in roadObjList]

我补充几句

关于for循环遍历的写法,还有好几种,虽然写法很low,但是效果都是差不多的。

写法一:

 for i,ele in enumerate(roadPointObjList):
    print(i)
    print(ele)

写法二:

for i in range(0, len(roadPointObjList)):
    print(i)
    print(roadPointObjList[i])

总结

我觉得两种写法其实都是一样的,时间复杂度都是O(n),毕竟都要遍历for循环。

只是第二种写法一步到位,当然如果要在for循环里面作判断的话,那就选第一种写法了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Odoo中如何生成唯一不重复的序列号详解

    Odoo中如何生成唯一不重复的序列号详解

    这篇文章主要给大家介绍了关于Odoo中如何生成唯一不重复的序列号的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02
  • python创建进程fork用法

    python创建进程fork用法

    这篇文章主要介绍了python创建进程fork用法,实例分析了Python使用fork创建进程的使用方法,需要的朋友可以参考下
    2015-06-06
  • python3实现名片管理系统

    python3实现名片管理系统

    这篇文章主要为大家详细介绍了python3实现名片管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • 将数据集制作成VOC数据集格式的实例

    将数据集制作成VOC数据集格式的实例

    今天小编就为大家分享一篇将数据集制作成VOC数据集格式的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 在Python中定义一个常量的方法

    在Python中定义一个常量的方法

    今天小编就为大家分享一篇在Python中定义一个常量的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • 详解如何修改jupyter notebook的默认目录和默认浏览器

    详解如何修改jupyter notebook的默认目录和默认浏览器

    这篇文章主要介绍了详解如何修改jupyter notebook的默认目录和默认浏览器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Python中Continue语句的用法的举例详解

    Python中Continue语句的用法的举例详解

    这篇文章主要介绍了Python中Continue语句的用法的举例详解,是Python入门中的基础知识,需要的朋友可以参考下
    2015-05-05
  • 利用python解决mysql视图导入导出依赖的问题

    利用python解决mysql视图导入导出依赖的问题

    这篇文章主要给大家介绍了关于利用python解决mysql视图导入导出依赖的问题,文中通过示例代码介绍的非常详细,对大家学习或者使用python具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-12-12
  • Python随机生成带特殊字符的密码

    Python随机生成带特殊字符的密码

    这篇文章主要介绍了Python随机生成带特殊字符的密码的相关资料,需要的朋友可以参考下
    2016-03-03
  • python实现类似ftp传输文件的网络程序示例

    python实现类似ftp传输文件的网络程序示例

    这篇文章主要介绍了python实现类似ftp传输文件的网络程序示例,需要的朋友可以参考下
    2014-04-04

最新评论