Questions tagged «python»

Python是一种多范式,动态类型的多用途编程语言。它旨在快速学习,理解和使用并强制使用干净统一的语法。请注意,Python 2自2020年1月1日起已不再受支持。不过,对于特定于版本的Python问题,请添加[python-2.7]或[python-3.x]标签。使用Python变体或库(例如Jython,PyPy,Pandas,Numpy)时,请将其包含在标签中。

11
Remove substring only at the end of string
I have a bunch of strings, some of them have ' rec'. I want to remove that only if those are the last 4 characters. So in other words I have somestring = 'this is some string rec' and I want it to become somestring = 'this is some string' …
68 python  string 

14
如何让Python说话
如何让Python说些文字? 我可以在子进程中使用Festival,但是我将无法控制它(或者可能是在交互模式下,但是它不是干净的)。 有Python TTS库吗?就像节日的API一样,eSpeak,...?

5
列表是否可以被另一个整除?
问题 假设您有两个列表A = [a_1, a_2, ..., a_n]和B = [b_1, b_2, ..., b_n]整数。我们说A是潜在的,可分割的B,如果有一个置换B,使得a_i整除b_i所有i。问题是:是否可以重新排序(即置换)B以便所有人都a_i可以整除?例如,如果您有b_ii A = [6, 12, 8] B = [3, 4, 6] 那么答案是True,因为B可以重新排序是B = [3, 6, 4],然后我们就会有a_1 / b_1 = 2,a_2 / b_2 = 2和a_3 / b_3 = 2,所有这一切都是整数,因此A是潜在的,整除B。 作为应该输出的示例False,我们可以有: A = [10, 12, 6, 5, 21, 25] B = …

7
如何使用几列中的值对熊猫数据框进行排序?
我有以下数据框: df = pandas.DataFrame([{'c1':3,'c2':10},{'c1':2, 'c2':30},{'c1':1,'c2':20},{'c1':2,'c2':15},{'c1':2,'c2':100}]) 或者,以人类可读的形式: c1 c2 0 3 10 1 2 30 2 1 20 3 2 15 4 2 100 以下排序命令按预期工作: df.sort(['c1','c2'], ascending=False) 输出: c1 c2 0 3 10 4 2 100 1 2 30 3 2 15 2 1 20 但是以下命令: df.sort(['c1','c2'], ascending=[False,True]) 结果是 c1 c2 …

4
python 2.7的备忘录库
我看到python 3.2在functools库中具有作为装饰器的备注。 http://docs.python.org/py3k/library/functools.html#functools.lru_cache 不幸的是,它还没有反向移植到2.7。有什么特定的原因,为什么它在2.7中不可用?是否有任何第三方库提供相同的功能,或者我应该编写自己的库?

4
内存错误和列表限制?
为了科学目的,我需要产生越来越大的(非常)矩阵(马尔可夫链)。我执行微积分,将其放入20301个元素的列表中(=矩阵的一行)。我需要将所有这些数据存储在内存中以继续进行下一步的马尔可夫步骤,但是如果需要,我可以将它们存储在其他位置(例如文件),即使这会减慢我的马尔可夫链的遍历速度。我的电脑(科学实验室):双氙气6个内核/ 12个线程,12GB内存,操作系统:win64 Traceback (most recent call last): File "my_file.py", line 247, in <module> ListTemp.append(calculus) MemoryError 微积分结果示例:9.233747520008198e-102(是,超过1/9000) 存储第19766个元素时会引发错误: ListTemp[19766] 1.4509421012263216e-103 如果我走得更远 Traceback (most recent call last): File "<pyshell#21>", line 1, in <module> ListTemp[19767] IndexError: list index out of range 因此,此列表在19767循环中发生了内存错误。 问题: 列表有内存限制吗?是“按列表限制”还是“按脚本全局限制”? 如何绕过那些限制?有什么想法吗? 使用numpy,python64是否有帮助?它们的内存限制是多少?那其他语言呢?
68 python  list  memory  limits 

8
列表中值的数量大于一定数量
我有一个数字列表,我想获取一个数字在满足特定条件的列表中出现的次数。我可以使用列表推导(或函数中的列表推导),但我想知道是否有人有更短的方法。 # list of numbers j=[4,5,6,7,1,3,7,5] #list comprehension of values of j > 5 x = [i for i in j if i>5] #value of x len(x) #or function version def length_of_list(list_of_numbers, number): x = [i for i in list_of_numbers if j > number] return len(x) length_of_list(j, 5) 还有更精简的版本吗?
68 python  list 

5
列表理解过滤-“ set()陷阱”
一个合理的常见操作是list基于另一个过滤list。人们很快发现: [x for x in list_1 if x in list_2] 对于大输入而言,速度很慢-为O(n * m)。uck 我们如何加快速度?使用aset进行过滤查找O(1): s = set(list_2) [x for x in list_1 if x in s] 这给出了很好的整体O(n)行为。但是,我经常看到甚至资深的编码人员也落入The Trap ™: [x for x in list_1 if x in set(list_2)] 阿克!这也是O(n * m),因为pythonset(list_2) 每次都构建,而不仅仅是一次构建。 我以为故事就此结束了-python无法优化它,只能构建set一次。只是要注意陷阱。要忍受它。嗯 #python 3.3.2+ list_2 = list(range(20)) #small for …

15
将Python浮点值增加尽可能小的数量
如何在python中以尽可能小的增量递增浮点值? 背景:我使用浮点值作为字典键。 偶尔,很偶尔(也许永远,但不能肯定从来没有),就会出现冲突。我想通过将浮点值增加尽可能小的值来解决这些问题。我怎样才能做到这一点? 在C语言中,我会旋转尾数来实现这一点,但是我认为这在Python中是不可能的。
68 python 

7
ImportError:无法导入名称“ _validate_lengths”
我已经开始学习Tensorflow。我正在使用Pycharm,环境是Ubuntu 16.04。我正在学习本教程。我交叉检查了小瘤。它是最新的。我不知道此错误的原因。 从numpy.lib.arraypad import _validate_lengths ImportError:无法导入名称“ _validate_lengths” 需要提示来解决此错误。谢谢。 import tensorflow as tf from skimage import transform from skimage import data import matplotlib.pyplot as plt import os import numpy as np from skimage.color import rgb2gray import random #listdir: This method returns a list containing the names of the entries in the …

6
懒惰的记录器消息字符串评估
我在我的python应用程序中使用标准的python日志记录模块: 导入日志 logging.basicConfig(level = logging.INFO) logger = logging.getLogger(“ log”) 而True: logger.debug('愚蠢的日志消息“ +''.join([str(i)for range(20)中的i)) # 做点什么 问题是,尽管未启用调试级别,但在每次循环迭代时都会评估该愚蠢的日志消息,这会严重损害性能。 有什么解决办法吗? 在C ++中,我们log4cxx提供了提供以下宏的软件包: LOG4CXX_DEBUG(logger, messasage) 有效评估为 如果(log4cxx :: debugEnabled(logger)){ log4cxx.log(logger,log4cxx :: LOG4CXX_DEBUG,消息) } 但是,由于Python(AFAIK)中没有宏,是否有一种有效的日志记录方法?
68 python  logging 





By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.