小编Kev*_*uan的帖子

"被杀"是什么意思?

我有一个Python脚本导入一个大的CSV文件,然后计算文件中每个单词的出现次数,然后将计数导出到另一个CSV文件.

但正在发生的事情是,一旦计数部分完成并且出口开始,它就会Killed在终点中说明.

我不认为这是一个内存问题(如果我认为我会得到内存错误而不是Killed).

难道这个过程花了太长时间?如果是这样,有没有办法延长超时时间,所以我可以避免这种情况?

这是代码:

csv.field_size_limit(sys.maxsize)
    counter={}
    with open("/home/alex/Documents/version2/cooccur_list.csv",'rb') as file_name:
        reader=csv.reader(file_name)
        for row in reader:
            if len(row)>1:
                pair=row[0]+' '+row[1]
                if pair in counter:
                    counter[pair]+=1
                else:
                    counter[pair]=1
    print 'finished counting'
    writer = csv.writer(open('/home/alex/Documents/version2/dict.csv', 'wb'))
    for key, value in counter.items():
        writer.writerow([key, value])
Run Code Online (Sandbox Code Playgroud)

而且Killed发生后finished counting已打印,以及完整的信息是:

killed (program exited with code: 137)
Run Code Online (Sandbox Code Playgroud)

python kill

69
推荐指数
5
解决办法
8万
查看次数

使用Python请求模块下载并保存PDF文件

我试图从网站下载PDF文件并将其保存到磁盘.我的尝试要么失败,要么编码错误,要么导致空白PDF.

In [1]: import requests

In [2]: url = 'http://www.hrecos.org//images/Data/forweb/HRTVBSH.Metadata.pdf'

In [3]: response = requests.get(url)

In [4]: with open('/tmp/metadata.pdf', 'wb') as f:
   ...:     f.write(response.text)
---------------------------------------------------------------------------
UnicodeEncodeError                        Traceback (most recent call last)
<ipython-input-4-4be915a4f032> in <module>()
      1 with open('/tmp/metadata.pdf', 'wb') as f:
----> 2     f.write(response.text)
      3 

UnicodeEncodeError: 'ascii' codec can't encode characters in position 11-14: ordinal not in range(128)

In [5]: import codecs

In [6]: with codecs.open('/tmp/metadata.pdf', 'wb', encoding='utf8') as f:
   ...:     f.write(response.text)
   ...: 
Run Code Online (Sandbox Code Playgroud)

我知道这是某种编解码器问题,但我似乎无法让它工作.

python python-2.7

63
推荐指数
4
解决办法
8万
查看次数

无法在捆绑中找到名为"Main"的故事板

我收到一个奇怪的错误:'Could not find a storyboard named 'Main' in bundle NSBundle'试图在真正的iOS设备上运行我的应用程序.

我在我的目录中有文件,它在模拟器中工作正常.但是,在该Copy Bundle Resources部分中,文件Main.storyboard为红色.

我已经尝试删除它并再次添加它,重新启动Xcode,清理构建等,但无济于事.这是我在Xcode中收到的警告:

/Users/ajay/Documents/avx/avx/Base.lproj/Main.storyboard: Internationalization of /Users/ajay/Documents/avx/avx/Base.lproj/Main.storyboard is not available when compiling for targets before iOS 6.0
Run Code Online (Sandbox Code Playgroud)

iphone xcode objective-c ios

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

在字符串中找到"出现两次的一个字母"

我试图捕获一个字母在一个字符串中出现两次使用RegEx(或者可能有更好的方法?),例如我的字符串是:

ugknbfddgicrmopn
Run Code Online (Sandbox Code Playgroud)

输出将是:

dd
Run Code Online (Sandbox Code Playgroud)

但是,我尝试过类似的东西:

re.findall('[a-z]{2}', 'ugknbfddgicrmopn')
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,它返回:

['ug', 'kn', 'bf', 'dd', 'gi', 'cr', 'mo', 'pn']   # the except output is `['dd']`
Run Code Online (Sandbox Code Playgroud)

我也有办法获得期望输出:

>>> l = []
>>> tmp = None
>>> for i in 'ugknbfddgicrmopn':
...     if tmp != i:
...         tmp = i
...         continue
...     l.append(i*2)
...     
... 
>>> l
['dd']
>>> 
Run Code Online (Sandbox Code Playgroud)

但那太复杂了......


如果是'abbbcppq',那么只抓住:

abbbcppq
 ^^  ^^
Run Code Online (Sandbox Code Playgroud)

所以输出是:

['bb', 'pp']
Run Code Online (Sandbox Code Playgroud)

然后,如果是的话'abbbbcppq',抓bb两次:

abbbbcppq
 ^^^^ ^^
Run Code Online (Sandbox Code Playgroud)

所以输出是:

['bb', 'bb', 'pp']
Run Code Online (Sandbox Code Playgroud)

python regex python-2.7

56
推荐指数
4
解决办法
5415
查看次数

如何使用多行单元格对表进行编码

我正在尝试用LaTeX写一篇简短的论文,需要添加一个包含3列的表格.

+-------------+-----------------+--------------------------------------+
| AAAAAAAAAA  | BBBBBBBBBBBBBBB | Betty Botter Bought a Bit of Butter  |
|             |                 | but the Butter's Bitter              |
+-------------+-----------------+--------------------------------------+
| CCCCCCCC    | DDDD            | Betty Botter Thought:                |
|             |                 | If I Put This Bitter Butter in My    |
|             |                 | Batter it Will Make My Batter Bitter |
+-------------+-----------------+--------------------------------------+
Run Code Online (Sandbox Code Playgroud)

不幸的是,我似乎无法找到正确的习惯用法.


我试过了:

\begin{tabular}{lll} 
    AAAAAAAAAA  & BBBBBBBBBBBBBBB & Betty Botter Bought a Bit of Butter but 
    the Butter's Bitter  \\
    CCCCCCCC  & DDDD & …
Run Code Online (Sandbox Code Playgroud)

latex tabular

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

是否有针对音量变化的广播动作?

我正在编写一个小部件,只要用户更改振铃器音量或振动设置,就需要更新.

捕获android.media.VIBRATE_SETTING_CHANGED对于振动设置工作得很好,但我没有找到任何方式在铃声音量变化时得到通知,虽然我可以尝试捕捉当用户按下音量增大/音量减小物理键时,还有很多其他选项在不使用这些键的情况下更改音量.

你知道是否有任何广播行动为此定义或以任何方式创建一个或没有它解决问题?

android volume broadcast android-intent

51
推荐指数
5
解决办法
4万
查看次数

如何在Java中生成HMAC等效于Python示例?

我正在寻找通过 Java中的Oauth实现一个获得Twitter授权的应用程序.第一步是获取请求令牌.这是app引擎的Python示例.

为了测试我的代码,我正在运行Python并使用Java检查输出.以下是Python生成基于哈希的消息验证代码(HMAC)的示例:

#!/usr/bin/python

from hashlib import sha1
from hmac import new as hmac

key = "qnscAdgRlkIhAUPY44oiexBKtQbGY0orf7OV1I50"
message = "foo"

print "%s" % hmac(key, message, sha1).digest().encode('base64')[:-1]
Run Code Online (Sandbox Code Playgroud)

输出:

$ ./foo.py
+3h2gpjf4xcynjCGU5lbdMBwGOc=
Run Code Online (Sandbox Code Playgroud)

如何在Java中复制此示例?

我在Java中看到过HMAC的一个例子:

try {
    // Generate a key for the HMAC-MD5 keyed-hashing algorithm; see RFC 2104
    // In practice, you would save this key.
    KeyGenerator keyGen = KeyGenerator.getInstance("HmacMD5");
    SecretKey key = keyGen.generateKey();

    // Create a MAC object …
Run Code Online (Sandbox Code Playgroud)

java sha1 oauth cryptoapi hmac

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

为什么我会收到"IndentationError:期望缩进块"?

if len(trashed_files) == 0 :
    print "No files trashed from current dir ('%s')" % os.path.realpath(os.curdir)
else :
    index=raw_input("What file to restore [0..%d]: " % (len(trashed_files)-1))
    if index == "*" :
        for tfile in trashed_files :
            try:
                tfile.restore()
            except IOError, e:
                import sys
                print >> sys.stderr, str(e)
                sys.exit(1)
    elif index == "" :
        print "Exiting"
    else :
        index = int(index)
        try:
            trashed_files[index].restore()
        except IOError, e:
            import sys
            print >> sys.stderr, str(e)
            sys.exit(1)
Run Code Online (Sandbox Code Playgroud)

我正进入(状态:

        elif index == "" :
        ^
    IndentationError: expected …
Run Code Online (Sandbox Code Playgroud)

python

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

"列表理解"是什么意思?它是如何工作的,我该如何使用它?

我有以下代码:

[x ** 2 for x in range(10)]
Run Code Online (Sandbox Code Playgroud)

当我在Python Shell中运行它时,它返回:

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Run Code Online (Sandbox Code Playgroud)

我搜索过,似乎这被称为列表理解,但它是如何工作的?

python list-comprehension list

46
推荐指数
4
解决办法
4792
查看次数

在Python中使用"for"计算索引

我需要在Python中做同样的事情:

for (i = 0; i < 5; i++) {cout << i;} 
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在Python中使用FOR来获取列表中元素的索引.

python indexing for-loop count

43
推荐指数
4
解决办法
12万
查看次数