标签:python

Python – 如何透视数据框?

什么是枢轴? 如何转动? 这是一个支点吗? 长格式到宽格式? 我见过很多关于数据透视表的问题。即使他们不知道他们询问数据透视表,他们通常也是。几乎不可能写出一个规范的问题和答案,其中包含了旋转的所有方面…. ……但是我要试一试。 现有问题和答案的问题在于,问题往往集中在OP难以概括以便使用一些现有的良好答案的细微差别。但是,没有一个答案试图给出全面的解释(因为这是一项艰巨的任务) 从我的谷歌搜索中查看一些示例 如何在Pandas中透视数据框? 好问答。但答案只 […]

Python – join:为什么是string.join(list)而不是list.join(string)?

这一直困扰着我。看起来这会更好: my_list = ["Hello", "world"] print my_list.join("-") # Produce: "Hello-world" 比这个: my_list = ["Hello", "world"] print "-".join(my_list) # Produce: "Hello-world" 是否有这样的具体原因? 这是因为任何可迭代都可以连接,而不仅仅是列表,但结果和“连接”总是字符串。 例如: import urllib2 pri […]

Python – 如何创建可变数量的变量?

如何在Python中完成变量变量? 这是一个精心设计的手动条目,例如:变量变量 我听说这是一个坏主意,但它是Python中的一个安全漏洞。真的吗? 您可以使用词典来完成此任务。字典是键和值的存储。 >>> dct = {'x': 1, 'y': 2, 'z': 3} >>> dct {'y': 2, 'x': 1, 'z': 3} >>> dct["y"] 2 您可以使用变量键名来实现变量的影响,而不会产生安全风险。 >>> […]

Python – 在函数中使用全局变量

如何在函数中创建或使用全局变量? 如果我在一个函数中创建一个全局变量,我如何在另一个函数中使用该全局变量?我是否需要将全局变量存储在需要访问的函数的局部变量中? 您可以在其他函数中使用全局变量,方法是global在分配给它的每个函数中将其声明为: globvar = 0 def set_globvar_to_one(): global globvar # Needed to modify global copy of globvar globvar = 1 def print_globvar() […]

Python – 如何将列表拆分为大小均匀的块?

我有一个任意长度的列表,我需要将它分成相同大小的块并对其进行操作。有一些明显的方法可以做到这一点,比如保留一个计数器和两个列表,当第二个列表填满时,将它添加到第一个列表并清空下一轮数据的第二个列表,但这可能非常昂贵。 我想知道是否有人对任何长度的列表都有一个很好的解决方案,例如使用生成器。 我一直在寻找有用的东西,itertools但我找不到任何明显有用的东西。但是可能会错过它。 这是一个产生你想要的块的生成器: def chunks(l, n): """Yield successive n-s […]

Python – 如何针对值测试多个变量?

我正在尝试创建一个函数,将多个变量与一个整数进行比较,并输出一个由三个字母组成的字符串。我想知道是否有办法将其翻译成Python。所以说: x = 0 y = 1 z = 3 mylist = if x or y or z == 0 : mylist.append("c") if x or y or z == 1 : mylist.append("d") if x or y or z == 2 : mylist.append("e") if x or y or z == 3 : mylis […]

Python – 如何在NumPy数组中获得N个最大值的索引?

NumPy提出了一种获取数组最大值索引的方法np.argmax。 我想要一个类似的东西,但返回N最大值的索引。 例如,如果我有一个数组,[1, 3, 2, 4, 5],function(array, n=3)将返回的索引[4, 3, 1]相对应的元素[5, 4, 3]。 [1]: import numpy as np In [2]: arr = np.array([1, 3, 2, 4, 5]) In [3]: arr.argsort()[-3:][::-1] Out[3]: array([4, […]

Python – 使用set()或{}创建集合的差异

这种差异使我感到困惑: >>> s = "()())()" >>> print set(s) set([')', '(']) >>> print {s} set(['()())()']) 为什么? 从Python文档的set()方法: 返回一个新的set对象,可选地包含从iterable中获取的元素。 由于字符串是可迭代的,因此该set()方法在给定字符串中创建一组所有字符。但是,由于集合不允许重复值,因此输出是包含字符串中两个唯一字符的集合 […]

Python – 在Python中获取列表的最后一个元素

在Python中,如何获得列表的最后一个元素? 答案: some_list[-1] 是最短和最Pythonic。 实际上,您可以使用此语法执行更多操作。该some_list[-n]语法获取第n到最后一个元素。所以some_list[-1]得到最后一个元素,some_list[-2]得到倒数第二个,等等,一直到底some_list[-len(some_list)],这给你第一个元素。 您也可以这种方式设置列表元素。例如: >>> some_list = [1, 2, 3] > […]

Python – 为什么人们在Python脚本的第一行写#!/usr/bin /env ?

答案: 如果您安装了多个版本的Python,/usr/bin/env将确保使用的解释器是您环境中的第一个$PATH。替代方案是硬编码类似的东西#!/usr/bin/python; 没关系,但不太灵活。 在Unix中,一个可以解释的可执行文件可以通过#!在第一行的开头加上解释器(以及它可能需要的任何标志)来指示要使用的解释器。 当然,如果你正在谈论其他平台,这条规则不适用(但“shebang line”没有任何损害,如果你将该脚本复制到具有 Unix基础的平台,例如Linux,Mac ,它将会有所 […]

Python – Python类继承了对象

是否有任何理由继承类声明object? 我刚刚发现了一些代码,我找不到一个很好的理由。 class MyClass(object): # class code follows... 是否有任何理由继承类声明object? tl; dr:在Python 3中,除了Python 2和3之间的兼容性之外,没有理由。在Python 2中,有很多原因。 Python 2.x故事: 在Python 2.x中(从2.2开始),根据是否存在object基类,有两种类型的类: “经典”样式类:它们没有object […]
友情链接:蝴蝶教程