Python笔记之字典循环

 

1.问题

Python是一门比较好入门的编程语言,但是入门简单,当然坑也是有的,今天就来介绍一个我遇到的坑吧,也是很简单的一个,就是当时脑子有点转不过弯来了。

先看代码:

 dict = {}
 lis = []
 for i in range(10):
     dict[i] = i + 1
     lis.append(dict)

我当时需要这段代码实现的功能是:利用字典数据结构存储每一个细节数据,然后放到list数据结构中,但是,当输出的时候,就出现了下图中的结果。

问题的根源是,Python中的字典数据结果和list数据结果的修改方式是不同的,对字典数据结构执行该语句:dict[i] = i + 1,就相当于list数据结构中的append语句,相当于是新加一个数据的意思,当时我真是,怎么都绕不过来,想了很久,然后还是想通了。>_<

2.纠正:

如果想实现我说的那种功能,应该全局变量字典数据结果放在for循环里面,让它变成一个局部变量,这样每一次for开始都当字段初始化。

 lis = []

 for i in range(10):
     dict = {}
     dict [i] = i + 1
     lis.append(dict)

这样就能实现了,我们来看运行效果:

Python笔记之字典循环的更多相关文章

  1. Python笔记4——字典的一些基本操作

    #字典 key-value #添加 my_family= {"father": "weihaiqing", "mother": " ...

  2. python笔记-dict字典的方法

    #!/usr/bin/env python #-*- coding:utf-8 -*- #打印0001-9999的数字 for i in range(9999): s = "%04d&quo ...

  3. python笔记:#011#循环

    循环 目标 程序的三大流程 while 循环基本使用 break 和 continue while 循环嵌套 01. 程序的三大流程 在程序开发中,一共有三种流程方式: 顺序 -- 从上向下,顺序执行 ...

  4. python笔记-dict字典的方法2

    #!/usr/bin/env python #-*- coding:utf-8 -*- ''' 概述: 使用键值(key-value)存储,具有极快的查找速度 注意:字典是无序的 key的特性: 1. ...

  5. Python笔记:字典的fromkeys方法创建的初始value同内存地址问题

    dict中的fromkeys()函数可以通过一个list来创建一个用同一初始value的dict. d = dict.fromkeys(["苹果", "菠萝"] ...

  6. python笔记2-数据类型:元组、字典常用操作

    元组 Python的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. tp=(1,2,3,'a','b' ...

  7. 嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av15123607/?from=search&seid=10211084839195730432#page=25 中的42-45讲 {字典}

    #coding=gbk#嵩天老师的零基础Python笔记:https://www.bilibili.com/video/av15123607/?from=search&seid=1021108 ...

  8. Python的dict字典结构操作方法学习笔记

    Python的dict字典结构操作方法学习笔记 这篇文章主要介绍了Python的dict字典结构操作方法学习笔记本,字典的操作是Python入门学习中的基础知识,需要的朋友可以参考下 一.字典的基本方 ...

  9. python学习笔记(三)---字典

    字典 在Python中,字典 字典 是一系列键 键-值对 值对 .每个键 键 都与一个值相关联,你可以使用键来访问与之相关联的值.与键相关联的值可以是数字.字符串.列表乃至字典.事实上,可将 任何Py ...

随机推荐

  1. Oracle_in_not-in_distinct_minsu的用法

    create table a( id int, username ) ); create table b( id int, username ) ); ,'小明'); ,'小红'); ,'小君'); ...

  2. rabbitmq的简单介绍一

    该博客的主要讲解了以下几种rabbitmq的用法1.实现简单的生产者发送消息给消费者2.实现序列持久化3.实现消息持久化4.实现消息公平分发5.实现广播6.实现组播7.实现细分组播 先来看下rabbi ...

  3. Python MySQLdb连接报2003错误原因

    经测试,本地连接使用:localhost会报2003错误. 解决办法: 使用:127.0.0.1代替:localhost.

  4. mongodb的安装与启动(centos7)

    公司迁移mongodb,查了半天资料,各种考证,各种资讯,最后我选择很野蛮的直接把库和日志直接scp过来了....... 记录下如何安装和启动mongodb: 1.解压mongodb: [root@i ...

  5. 实战:MySQL Sending data导致查询很慢的问题详细分析(转)

    出处:http://blog.csdn.net/yunhua_lee/article/details/8573621 这两天帮忙定位一个MySQL查询很慢的问题,定位过程综合各种方法.理论.工具,很有 ...

  6. PHP(九)数组(2)

  7. 如何打开Tango的ADF文件?

    3ds max? opengl? ... Excel? vs? UltraEdit OpenGL Android API ADF文件数据结构:链接

  8. MFC中的一般经验之谈4

    MFC中的窗口控件,都是从CWnd类中继承的.MFC以及ResourceEditor支持的所有控件称为标准控件. 在对话框资源文件夹下,然后邮件新建添加新对话框,新建对话框后要在资源视图中的对话框文件 ...

  9. Oracle E-Business Suite并发请求的优先级(Concurrent Request Priority)

    不少用户抱怨自己的Oracle E-Business Suite并发请求(Concurrent Request)提交了好久,但还是一直在排队,等了好久还没有执行.用户希望对于一些重要性程度高.响应要求 ...

  10. Android-Sqlite-升级操作

    一想到Android到数据库,只需要想到一个类 SQLiteOpenHelper,然后写一个类继承 SQLiteOpenHelper,重写构造方法,对数据库进行配置 public class MySQ ...