小编Ash*_*ary的帖子

从字符串中删除数字

我们有一大堆例如字符串:c1309,IF1306,v1309,p1209,a1309,mo1309.
在Python中,删除数字的最佳方法是什么?所有我需要的是:c,IF,v,p,a,mo从上面的例子.

python regex string

16
推荐指数
3
解决办法
2166
查看次数

如何直接打印到python 2.x和3.x中的文本文件?

而不是使用write(),在Python 2和3中写入文本文件的另一种方式是什么?

file = open('filename.txt', 'w')
file.write('some text')
Run Code Online (Sandbox Code Playgroud)

python stdout file python-2.x python-3.x

14
推荐指数
2
解决办法
2万
查看次数

如何查找字符串中单词的计数?

我有一个字符串" Hello I am going to I with hello am".我想找出一个单词在字符串中出现的次数.示例hello发生2次.我试过这种方法只打印字符 -

def countWord(input_string):
    d = {}
    for word in input_string:
        try:
            d[word] += 1
        except:
            d[word] = 1

    for k in d.keys():
        print "%s: %d" % (k, d[k])
print countWord("Hello I am going to I with Hello am")
Run Code Online (Sandbox Code Playgroud)

我想学习如何找到字数.

python

14
推荐指数
3
解决办法
4万
查看次数

Numpy:a [i] [j]和a [i,j]之间的差异

来自Python的列表背景和C++/Java等编程语言的背景,一个用于使用a[i][j]方法提取元素的符号.但是NumPy,人们通常会这样做a[i,j].这两个都会返回相同的结果.

这两者之间的根本区别是什么?应该首选哪些?

python numpy list

14
推荐指数
1
解决办法
3990
查看次数

为什么locals()会返回一个奇怪的自引用列表?

所以我使用locals()来获取函数中的一些参数.很好地工作:

def my_function(a, b):
    print locals().values()

>>> my_function(1,2)
[1, 2]
Run Code Online (Sandbox Code Playgroud)

标准的东西.但现在让我们介绍一下列表理解:

def my_function(a, b):
    print [x for x in locals().values()]

>>> my_function(1,2)
[[...], 1, 2]
Run Code Online (Sandbox Code Playgroud)

EHH?为什么要插入自引用?

python list-comprehension python-2.6 locals python-internals

14
推荐指数
1
解决办法
444
查看次数

从字符串中删除多个子字符串的最有效方法?

从字符串中删除子串列表的最有效方法是什么?

我想要一个更清洁,更快捷的方法来做到以下几点:

words = 'word1 word2 word3 word4, word5'
replace_list = ['word1', 'word3', 'word5']

def remove_multiple_strings(cur_string, replace_list):
  for cur_word in replace_list:
    cur_string = cur_string.replace(cur_word, '')
  return cur_string

remove_multiple_strings(words, replace_list)
Run Code Online (Sandbox Code Playgroud)

python string performance

14
推荐指数
1
解决办法
7461
查看次数

通过列表理解来平整列表清单

我试图在python中使用list comprehension来压缩列表.我的名单有点像

[[1, 2, 3], [4, 5, 6], 7, 8]
Run Code Online (Sandbox Code Playgroud)

只是为了打印这个列表中的单个项目我写了这段代码

   def flat(listoflist):
     for item in listoflist:
             if type(item) != list:
                     print item
             else:
                     for num in item:
                             print num  
>>> flat(list1)
1
2
3
4
5
6
7
8
Run Code Online (Sandbox Code Playgroud)

然后我使用相同的逻辑通过列表理解展平我的列表我得到以下错误

    list2 = [item if type(item) != list else num for num in item for item in list1]
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    TypeError: 'int' object is not iterable
Run Code Online (Sandbox Code Playgroud)

如何使用列表理解来展平这种类型的列表?

python list-comprehension list python-2.7

13
推荐指数
2
解决办法
5180
查看次数

Python将字符串添加到文件中的每一行

我需要打开一个文本文件,然后在每行的末尾添加一个字符串.

至今:

appendlist = open(sys.argv[1], "r").read()
Run Code Online (Sandbox Code Playgroud)

python string

13
推荐指数
2
解决办法
3万
查看次数

functools.partial和类似lambda之间的区别?

在Python中,假设我有一个函数f,我想传递一些辅助参数(为简单起见,它只是第一个保持变量的参数).

这两种方式(如果有的话)之间有什么区别?

# Assume secondary_args and secondary_kwargs have been defined

import functools

g1 = functools.partial(f, *secondary_args, **secondary_kwargs)
g2 = lambda x: f(x, *secondary_args, **secondary_kwargs)
Run Code Online (Sandbox Code Playgroud)

例如,在doc页面中partial,有这样的引用:

partial 在类中定义的对象的行为类似于静态方法,并且在实例属性查找期间不会转换为绑定方法.

如果用于从提供给类的参数(在构造函数中或稍后通过函数)中创建类方法,lambda方法是否会受此影响?

python lambda partial functools

12
推荐指数
3
解决办法
5001
查看次数

python reduce来查找集合的联合

我试图找到一组集合的联合.具体来说,我想要networkx调用图表字典中每个键的节点列表的并集periodic_gs.我想使用该reduce函数,因为似乎合理的是将所有periodic_gs[x].nodes() where 的联合作为x一个关键periodic_gs.

这是我的尝试:

reduce(lambda x,y: set(periodic_gs[x].nodes()).union(set(periodic_gs[y].nodes())), periodic_gs.keys(), {})
Run Code Online (Sandbox Code Playgroud)

对我而言,这表示在字典中的每个图形上使用节点的并集.出于某种原因,python告诉我:TypeError: unhashable type: 'dict'我没有看到这个TypeError,因为periodic_gs.keys()是一个键列表(它们是字符串,但我不知道这是多么重要),并且当替换为lambda函数的参数时将起作用.

是什么导致类型错误,我该如何解决?

python dictionary functional-programming set fold

12
推荐指数
2
解决办法
6164
查看次数