【Python 元组(Tuple)】教程文章相关的互联网学习教程文章

在Python中搜索二维元组/列表【代码】

我想搜索特定字符串的元组元组并返回父元组的索引.我似乎经常遇到这种搜索的变种. 什么是最pythonic的方式来做到这一点? 即:derp = (('Cat','Pet'),('Dog','Pet'),('Spock','Vulcan')) i = None for index, item in enumerate(derp):if item[0] == 'Spock':i = indexbreak >>>print i 2我可以将它概括为一个小的实用函数,它接受一个可迭代的索引(我在示例中硬编码为0)和一个搜索值.它可以做到这一点,但我有这个想法,它可能有一个...

Python中元组字典 – 键匹配的一个元素【代码】

如果我有一个如下的词典:foo = {('foo', 45):5, ('bar', 34):3}我如何检查该元组的一部分?if 'foo' in foo: #should be truepass if 45 in foo: #also should be true或者其他一些语法.解决方法: >>> foo = {('foo', 45): 5, ('bar', 34): 3} >>> any(t1 == "foo" for (t1, t2) in foo) True >>> any(t2 == 45 for (t1, t2) in foo) True如果您不知道值的位置,您可以检查整个对:>>> any(45 in pair for pair in foo) Tr...

Python元组中的高效多任意索引访问?【代码】

我有一个很长的Python元组.我想尽可能有效地从t抓取索引i1,i2,…,iN中的元素.什么是最好的方式? 一种方法是:(1) result = [t[j] for j in (i1, i2, ..., iN)]但这似乎会导致N个单独的查找到元组.有更快的方法吗?当Python做这样的切片时:(2) result = t[1:M:3]我假设它不执行M / 3单独查找. (也许它使用位掩码并执行单个复制操作?)是否有一些方法可以利用Python中的任何内容(2)使我的任意索引切片在单个副本中发生? 谢谢...

Python命名元组列表,替换属性【代码】

这是一些简化的代码,我不明白为什么它不起作用.from collections import namedtupleMyStruct = namedtuple('MyStruct', 'ThreadInstance ThreadName Mnemonic IpAddr IpGW Status Mode')Node = MyStruct(None, '', '', '', '', -1, 0) NodeDb = [] for id in range(4):NodeDb.append(Node)NodeDb[2]._replace(ThreadName='T2') NodeDb[2]._replace(Mnemonic='ABCD') NodeDb[2]._replace(IpAddr='192.0.1.2') NodeDb[2]._replace(I...

python – 将简单元组转换为字典【代码】

我有一个偶数长度的元组,其元素如(‘a’,’b’,’c’,’d’,’e’,’f’)我想转换为字典,其元素如[‘a’:’ b’,’c’:’d’,’e’:’f’]. 我尝试使用dict(元组),但这没有帮助.我刚开始学习Python,任何帮助都会非常值得一提.解决方法:看起来你正试图将元组分组成对,然后从这些对中制作一个字典.有两种方法可以做到这一点. 首先是拉链切片:zip(t[::2], t[1::2])这称为“扩展切片”,其形式为start:stop:step.第一个是:: 2,所以...

python – 用Numba优化整数元组的字典?【代码】

我正在学习如何使用Numba(虽然我已经非常熟悉Cython).我该怎么做才能加快这段代码的速度?请注意,该函数返回一组两元组的dict.我正在使用IPython笔记本.我更喜欢Numba而不是Cython.@autojit def generateadj(width,height):adj = {}for y in range(height):for x in range(width):s = set()if x>0:s.add((x-1,y))if x<width-1:s.add((x+1,y))if y>0:s.add((x,y-1))if y<height-1:s.add((x,y+1))adj[x,y] = sreturn adj我设法在Cyth...

元组在C#中展开类似于Python【代码】

参见英文答案 > Possible to initialize multiple variables from a tuple? 7个在Python中,我们可以使用类似的语法展开元组:a, b = (1, 2)C#中是否有类似的结构?或者访问以下元素:Tuple<int, int> t = Tuple.Create(1, 2); Console.Write(t.Item1);唯一可行的方法?解决方法:元组解构(有时称为“爆炸”),即将其元素分布在多个变量上,并不是C#语言直接支持的. 您可以编写自己的扩展方法:sta...

如何将具有键作为元组的python字典中的值相加【代码】

我有以下字典与键作为元组D_grpTagReport = { ('Tag1', '1'):345.56 ,('Tag1', '2'):45.6 ,('Tag2', '3'):3.1 ,('Tag3', '1'):21.56 ,('Tag2', '3'):1.56 ,}我想得到每个唯一标签的值的总和.是否有可用于处理此字典的内置实用程序. 结果示例:Tag1 : 391.16 # (total of all Tag1) Tag2 : 4.66 # (total of all Tag2) Tag3 : 21.56 # (total of all Tag3) 解决方法:您可以使用itertools.groupby,首先对字典使用.it...

python – 如何从下面的向量中获取具有最高值的5个元组?【代码】

我正在使用gensim进行实验.我正在使用lda模型来获得一个概率向量,如下所示:[(0, 0.01666666666666804), (1, 0.01666666666666982), (2, 0.01666666666667857), (3, 0.016666666666667104), (4, 0.016666666666668519), (5, 0.01666666666666838), (6, 0.016666666666681464), (7, 0.016666666666669494), (8, 0.016666666666669269), (9, 0.016666666666667069), (10, 0.016666666668398125), (11, 0.016666666666666666), (12, 0...

python – Keras LSTM上的batch_input_shape元组【代码】

我有以下特征向量,每个样本包含一个特征,总共有32个样本: X = [[0.1],[0.12],[0.3] …… [0.10]] 以及由二进制值组成的标签向量 Y = [0,1,0,0,…… 1](也有32个样本) 我正在尝试使用Keras LSTM根据新条目预测序列的下一个值.我无法弄清楚的是“batch_input_shape”元组的含义:model.add(LSTM(neurons, batch_input_shape=(?, ?, ?), return_sequences=False, stateful=True))根据this的文章,第一个是批量大小,但另外两个呢?它们...

python – 我的列表或元组或任何类似数据结构中的变量如何将其更改反映在列表中?【代码】

我不太清楚如何表达它,所以我会证明我的意思.a = 1 b = 2 my_list = [a,b] print my_list # [1,2]a = a + 1 b = b * 2 print a # 2 print b # 4# prints [1,2] but I want [2,4] print my_list这也发生在元组和集合中.我需要什么数据结构?或者我需要什么逻辑?解决方法:整数是不可变的.这意味着一旦你创建了一个整数对象,例如如果a = 1,则永远无法更改.这并不意味着你不能将名称a重新绑定到另一个对象,只是整数对象本身的值不会改...

Python笔记004-元组的拆包和命名元组

Python笔记004-元组的拆包和命名元组 以下是我学习《流畅的Python》后的个人笔记,现在拿出来和大家共享,希望能帮到各位Python学习者。首次发表于: 微信公众号:科技老丁哥,ID: TechDing,敬请关注。本篇主要知识点:元组的拆包就是将元组内部的每个元素按照位置一一对应的赋值给不同变量,可以应用到变量赋值,函数参数赋值,获取元组中特定位置的元素值等场合。 namedtuple: 用于存储对象序列,不能改变元素值,可以像dict一样...

python – 将pandas数据帧转换为元组的元组【代码】

我有以下pandas dataframe df:Description Code 0 Apples 014 1 Oranges 015 2 Bananas 017 3 Grapes 021我需要将它转换为元组的元组,如下所示:my_fruits = ( ('Apples', '014'), ('Oranges', '015'), ('Bananas', '017'), ('Grapes', '021'))你能帮我吗?我尝试了以下代码,但它没有返回我真正想要的东西:list(zip(df.columns,df.T.values.tolist()))提前致谢!!!解决方法:您需...

Python的不堪一击到初学乍练(列表,元组)

Python(列表,元组) 一.列表列表初识列表是python的基础数据类型之一,其他编程语言也有类似的数据类型. 比如JS中的数组, java中的数组等等,它是以[ ]括起来, 每个元素用","隔开并且可以存放各种数据类型. 列表相比于字符串,不仅可以存放不同的数据类型,并且可以存放大量的数据. 当32位Python可以存放:536870912个元素, 当64位Python可以存放:1152921504606846975个元素,并且列表是按照你保存的顺序进行排序的,有索引并且可以切片,方...

python课堂整理5---元组【代码】【图】

一、元组 Tuple tu = (111, 22, 33, "alex", (11,22), [(33, 44)], True, )元组元素不可被修改,不能被增加或删除 一般写元组的时候,推荐在最后加入“ , ” 支持索引取值 支持切片取值 可被 for 循环,是可迭代对象 #字符串转元组s = "dabai" v = tuple(s) print(v)用同样的方法,列表也可以转换为元组,元组也可以转换为列表 如果元组里只有字母,可以用join方法组合为新的字符串tu = (dabai, "liu") v = "".join(tu) print(v)...