Python3之Zip

from collections import defaultdict
from collections import OrderedDict

d = defaultdict(list)
d[‘a‘].append(1)
d[‘a‘].append(2)
d[‘b‘].append(5)

print(d)

#di = dict(list)
#di[‘b‘].append(11)
#di[‘b‘].append(22)
#di[‘c‘].append(55)
#print(di)

ds = defaultdict(set)
ds[‘b‘].add(11)
ds[‘b‘].add(22)
ds[‘c‘].add(33)
print(ds)

do = OrderedDict()
do[‘foo‘] = 1
do[‘far‘] = 2
do[‘coo‘] = 5

for key in do:
    print(key, do[key])

# 字典的运算
prices = {
    ‘IBM‘: 205.5,
    ‘APPLE‘: 500,
    ‘HP‘: 43,
    ‘FB‘: 88.3
}

min_prices = min(zip(prices.values(), prices.keys()))
print(min_prices)

max_prices = max(zip(prices.values(), prices.keys()))
print(max_prices)

prices_sorted = sorted(zip(prices.values(), prices.keys()))
print(prices_sorted)

z1 = [1,2,3]
z2 = [‘A‘,‘B‘,‘C‘]
z3 = zip(z1, z2)
print(list(z3))
z4 = zip(*zip(z1, z2))
print(list(z4))

x = [1,2]
y = [‘a‘,‘b‘,‘c‘]
print(list(zip(x,y)))

#zip()配合*号操作符,可以将已经zip过的列表对象解压, 并且返回的是元祖

#使用zip和iterators生成滑动窗口 (n -grams)
from itertools import islice
def n_grams(a, n):
    z = (islice(a, i, None) for i in range(n))
    return zip(*z)

a = [1,2,3,4,5,6]
print(‘(a,3):‘,list(n_grams(a,3)))
print(‘(a,2):‘,list(n_grams(a,2)))
print(‘(a,4):‘,list(n_grams(a,4)))

# 使用zip反转字典
m = {‘a‘: 1, ‘b‘: 2, ‘c‘: 3, ‘d‘: 4}
print(‘m.items = ‘, m.items())
print(list(zip(m.values(), m.keys())))
md = dict(zip(m.values(), m.keys()))
print(md)

  

时间: 2024-10-27 02:41:08

Python3之Zip的相关文章

Python3实现zip分卷压缩

Python实现zip分卷压缩 使用 zipfile 库 查看 官方中文文档 利用 Python 压缩 ZIP 文件,我们第一反应是使用 zipfile 库,然而,它的官方文档中却明确标注"此模块目前不能处理分卷 ZIP 文件",(⊙﹏⊙) 折腾经过 翻遍了Google.CSDN.Stackoverflow等平台均未找到解决方案,最靠谱的是调用外部解压程序实现分卷压缩的功能.但是,如何不依靠外部程序实现这个功能呢?? 于是乎,只能自己慢慢造轮子.看着 ZIP 格式开发商留下的文档 ZI

python3 operate ZIP file

>>>import zipfile , os //infomation for zip file >>>zipFileHandle = zipfile.ZipFile('example.zip')   //create zip file handle >>>zipFileHandle.namelist()      //return all files and directorys in the zip file >>>spamInf

python3的zip函数

zip函数接受任意多个可迭代对象作为参数,将对象中对应的元素打包成一个tuple,然后返回一个可迭代的zip对象. 这个可迭代对象可以使用循环的方式列出其元素 若多个可迭代对象的长度不一致,则所返回的列表与长度最短的可迭代对象相同. 用法1:用两个列表生成一个zip对象 例1: >>> a1=[1,2,3] >>> a2=[4,5,6] >>> a3=[7,8,9] >>> a4=["a","b"

python3中的zip

在 python2 中zip可以将两个列表并入一个元组列表,如: a = [1,2,3,4] b = [5,6,7,8] c = zip(a,b) 结果:c [(1,5),(2,6),(3,7),(4,8)] 在python3中zip返回值有所改变: >>> a = [1,2,3,4]>>> b = [5,6,7,8]>>> c = zip(a,b)>>> c<zip object at 0x03496878> 可以看到返

python2 与 python3的区别总结

python2 与 python3的区别总结 几乎所有的Python 2程序都需要一些修改才能正常地运行在Python 3的环境下.为了简化这个转换过程,Python 3自带了一个叫做2to3的实用脚本(Utility Script),这个脚本会将你的Python 2程序源文件作为输入,然后自动将其转换到Python 3的形式. 案例研究:将chardet移植到Python 3(porting chardet to Python 3)描述了如何运行这个脚本,然后展示了一些它不能自动修复的情况.这

python2 与 python3的区别

几乎所有的python2程序都需要一些修改才能正常的运行在python3的环境下.为了简化这个转换过程,Python3自带了一个2to3的实用脚本.这个脚本会将python2程序源文件作为输入,然后自动转换到python3.但并不是所有内容都可以自动转换. print语句 python2中print是一个语句,不论想输出什么,直接放到print关键字后面即可.python3里,print()是一个函数,像其他函数一样,print()需要你将要输出的东西作为参数传给它. python2 pytho

python2.+进化至python3.+ 语法变动差异(不定期更新)

1.输出 python2.+ 输出: print "" python3.+ 输出: print ("") 2.打开文件 python2.+ 打开文件: file()或open() python3.+ 打开文件: open() 3.thread模块 python2.+ 导入thread模块: import thread 线程运行方法: thread.start_new_thread() python3.+ 导入thread模块: import _thread 线程运行

python zip()函数用法

zip() --内建函数 zip([iterable, ...]) 它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表). 若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同: 与dict() 连用,可完成list组合成字典: 注:python3目前zip函数print输出不能正常显示,显示如:<zip object at 0x0000000002598548> 用法示例: 读者看看下面的例子,对

浅析python列表解析和迭代

要看懂列表解析,首先要知道几个定义,第一个是python的解释器,虽然大多数时候,我们都将python当作一门编程语言来看待,实际上,python也是一个名为解释器的软件包,解释器是一种能让其他程序运行起来的程序,如果你写了一段代码,让python解释器读取程序,并且按着命令执行,得出结果,实际上,解释器是代码雨计算机硬件之间的软件逻辑层,计算机上安装的python程序就是一个解释器和一些基本的库,例如os,sys模块,是最基本的包.值得一提的是在python的解释器里面运行.第二个是迭代器(i