Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)

之前自己也遇到过一次,这段时间在群里也遇到过几次的一个问题
用python2.7写的一段程序,里面用到了字典推导式,但是服务器版本是python2.6,无法运行。

今天查了下关于Dict Comprehensions,在pep274中有明确的说明。

http://legacy.python.org/dev/peps/pep-0274/

代码如下:

Implementation
    All implementation details were resolved in the Python 2.7 and 3.0
    time-frame.

这个是从2.7之后才加上的。

2.6版本中我们怎么用呢,其实用一个for循环来解决就好了

代码如下:

#表达式写法 
In [4]: print {i : chr(65+i) for i in range(4)} 
{0: 'A', 1: 'B', 2: 'C', 3: 'D'}

代码如下:

#for循环写法 
In [5]: d = {} 
 
In [6]: for i in range(4): 
   ...:     d[i] = chr(65+i) 
   ...: 
 
In [7]: print d 
{0: 'A', 1: 'B', 2: 'C', 3: 'D'}

(0)

相关推荐

  • Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)

    之前自己也遇到过一次,这段时间在群里也遇到过几次的一个问题 用python2.7写的一段程序,里面用到了字典推导式,但是服务器版本是python2.6,无法运行. 今天查了下关于Dict Comprehensions,在pep274中有明确的说明. http://legacy.python.org/dev/peps/pep-0274/ 复制代码 代码如下: Implementation     All implementation details were resolved in the Pyt

  • Python2.x版本中基本的中文编码问题解决

    Python 输出 "Hello, World!",英文没有问题,但是如果你输出中文字符"你好,世界"就有可能会碰到中文编码问题. Python 文件中如果未指定编码,在执行过程会出现报错: #!/usr/bin/python print "你好,世界"; 以上程序执行输出结果为: File "test.py", line 2 SyntaxError: Non-ASCII character '\xe4' in file te

  • 简单介绍Python2.x版本中的cmp()方法的使用

    cmp()方法比较两个列表的元素. 语法 以下是cmp()方法的语法: cmp(list1, list2) 参数 list1 -- 这是要进行比较的第一个列表 list2 -- 这是要进行比较的第二个列表 返回值 如果元素是相同类型的,执行比较,并返回结果.如果元素是不同的类型,检查,看看他们是否是数字 如果是数字必要时强制进行数字比较 如果任一元素是数字,然后在另一元素是"大"(数字是"最小") 否则,类型是按名称字母顺序排序 如果到达了列表中的一个的结束,较长的

  • Python2.x版本中maketrans()方法的使用介绍

    maketrans()方法返回的字符串intab每个字符映射到字符的字符串outtab相同位置的转换表.然后这个表被传递到translate()函数. 注意:两个intab和outtab必须具有相同的长度. 语法 以下是maketrans()方法的语法: str.maketrans(intab, outtab]); 参数 intab -- 这是实际字符的字符串. outtab -- 这是相应的映射的字符的字符串. 返回值 此方法返回时使用转换表translate()函数. 例子 下面的例子显示m

  • Python2.x版本中cmp()方法的使用教程

    cmp()方法返回两个数的差的符号: -1 如果 x < y, 0 如果 x == y, 或者 1 如果 x > y . 语法 以下是cmp()方法的语法: cmp( x, y ) 参数 x -- 这是一个数值表达式 y -- 这也是一个数值表达式 返回值 此方法如果x<y返回-1,如果x== y则返回0,如果x>y则返回1 例子 下面的例子显示cmp()方法的使用 #!/usr/bin/python print "cmp(80, 100) : ", cmp(8

  • Python列表推导式、字典推导式与集合推导式用法实例分析

    本文实例讲述了Python列表推导式.字典推导式与集合推导式用法.分享给大家供大家参考,具体如下: 推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的数据序列的结构体. 共有三种推导,在Python2和3中都有支持: 列表(list)推导式 字典(dict)推导式 集合(set)推导式 一.列表推导式 1.使用[]生成list 基本格式 variable = [out_exp_res for out_exp in input_

  • Python2和Python3中print的用法示例总结

    前言 最近在学习python,对于python的print一直很恼火,老是不按照预期输出.在python2中print是一种输出语句,和if语句,while语句一样的东西,在python3中为了填补python2的各种坑,将print变为函数,因此导致python3中print的一些使用和python2很不一样.下面就来给大家详细的总结了关于Python2和Python3中print的用法,话不多说了,来一起看看详细的介绍吧. 一.Python2中的print用法 在Python2 中 prin

  • Python中遍历字典过程中更改元素导致异常的解决方法

    先来回顾一下Python中遍历字典的一些基本方法: 脚本: #!/usr/bin/python dict={"a":"apple","b":"banana","o":"orange"} print "##########dict######################" for i in dict: print "dict[%s]=" % i,

  • python中的字典操作及字典函数

    字典 dict_fruit = {'apple':'苹果','banana':'香蕉','cherry':'樱桃','avocado':'牛油果','watermelon':'西瓜'} 字典的操作 #字典的遍历方式 #默认遍历(遍历key) for value in dict_fruit: print(value) ''''' 遍历出的值: watermelon apple cherry avocado banana ''' #使用key遍历(与默认遍历一样) for key in dict_f

  • VBS 脚本中的字典、动态数组、队列和堆栈实现代码

    1.编写环境 今天突发奇想下载了个gVim来写VBS脚本,我用的版本是7.4的 在写脚本前,需要在gVim的安装根目录下,找到文件"_vimrc",在里面添加下面三行: set number set softtabstop=4 set tabstop=4 意思分别是"显示行号"."按退格键一次删掉4个空格"和"设定Tab长度为4个字符" 这个设置类似于Linux系统下文件".vimrc"的配置 1.字典:S

随机推荐