在下面的例子中,我期望所有的元素都是元组,为什么元组只有一个string时才转换为string? >>> a = [('a'), ('b'), ('c', 'd')] >>> a ['a', 'b', ('c', 'd')] >>> >>> for elem in a: … print type(elem) … <type 'str'> <type 'str'> <type 'tuple'>
Python文档说切片列表返回一个新的列表。 现在,如果一个“新”列表正在返回,我有以下怀疑涉及“分配到切片” a = [1, 2, 3] a[0:2] = [4, 5] print a 现在输出将是: [4, 5, 3] 表情的左边怎么回事呢? 是的,我读了文档,它说这是可能的,因为切片清单返回一个“新”列表,为什么原始列表被修改,我无法理解它背后的机制。
我需要将one转换为one , two转换为two等等。 有没有办法做到这一点与图书馆或类或任何东西?
计算中的%是多less? 我似乎无法弄清楚它做了什么。 它是否计算出一个百分比例如: 3 + 2 + 1 – 5 + 4 % 2 – 1 / 4 + 6显然等于7。
拥有这个: text = word_tokenize("The quick brown fox jumps over the lazy dog") 并运行: nltk.pos_tag(text) 我得到: [('The', 'DT'), ('quick', 'NN'), ('brown', 'NN'), ('fox', 'NN'), ('jumps', 'NNS'), ('over', 'IN'), ('the', 'DT'), ('lazy', 'NN'), ('dog', 'NN')] 这是不正确的。 句子中quick brown lazy的标签应该是: ('quick', 'JJ'), ('brown', 'JJ') , ('lazy', 'JJ') 通过他们的在线工具进行testing,结果相同。 quick , brown和fox应该是形容词不是名词。
什么是operator *的正确名称,如function(*args) ? 解压缩,解压,别的东西?
在我的代码中有一个与套接字相关的函数调用,那个函数来自另一个模块,因此不在我的控制之下,问题是它偶尔会阻塞几个小时,这是完全不可接受的,我怎样才能限制我的代码中的函数执行时间? 我想解决scheme必须利用另一个线程。
只是澄清,这不是一个功课问题:) 我想为我正在构build的math应用程序find素数,并遇到了Eratosthenes的Sieve方法。 我已经用Python写了一个实现。 但速度非常慢。 比方说,如果我想find所有不到200万的素数。 它需要> 20分钟。 (我在此停止)。 我怎样才能加快速度呢? def primes_sieve(limit): limitn = limit+1 primes = range(2, limitn) for i in primes: factors = range(i, limitn, i) for f in factors[1:]: if f in primes: primes.remove(f) return primes print primes_sieve(2000) 更新:我结束了对这个代码进行分析,发现花费了相当多的时间从列表中删除一个元素。 相当可以理解,考虑到它必须遍历整个列表(最坏的情况)来find元素,然后删除它,然后重新调整列表(也许一些副本呢?)。 无论如何,我抽出了字典的名单。 我的新实现 – def primes_sieve1(limit): limitn = limit+1 primes = dict() for i […]
我想把一个int放入一个string 。 这就是我现在正在做的事情: end = smooth(data,window_len=40) plot.plot(time[0:len(end)],end) plot.savefig('hanning(40).pdf') #problem line 我必须运行该程序的几个不同的数字,而不是两个40年代。 所以我想做一个循环,但插入这样的variables不起作用: plot.savefig('hanning',num,'.pdf') 如何在Pythonstring中插入一个variables?
在Python中移动列表的最有效的方法是什么? 现在我有这样的东西: >>> def shift(l, n): … return l[n:] + l[:n] … >>> l = [1,2,3,4] >>> shift(l,1) [2, 3, 4, 1] >>> shift(l,2) [3, 4, 1, 2] >>> shift(l,0) [1, 2, 3, 4] >>> shift(l,-1) [4, 1, 2, 3] 有没有更好的办法?