小编Jam*_*Lim的帖子

如何在OSX Mavericks上安装命令行工具

我正在运行OSX Mavericks(10.9)并且在尝试更新rails中的bundle时,我收到以下错误消息:

"你必须先安装开发工具."

我已经安装了Xcode,似乎没有选项可以在Xcode 4.6中安装这些工具.如何通过终端下载和安装命令行工具?

ruby macos xcode osx-mavericks

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

ssl.SSLError:tlsv1警报协议版本

我正在将REST API用于Cisco CMX设备,并尝试编写Python代码,该代码向API发出GET请求以获取信息.代码如下,除了更改必要的信息外,与文件中的代码相同.

from http.client import HTTPSConnection
from base64 import b64encode


# Create HTTPS connection
c = HTTPSConnection("0.0.0.0")

# encode as Base64
# decode to ascii (python3 stores as byte string, need to pass as ascii 
value for auth)
username_password = b64encode(b"admin:password").decode("ascii")
headers = {'Authorization': 'Basic {0}'.format(username_password)}

# connect and ask for resource
c.request('GET', '/api/config/v1/aaa/users', headers=headers)

# response
res = c.getresponse()

data = res.read()
Run Code Online (Sandbox Code Playgroud)

但是,我不断收到以下错误:

Traceback (most recent call last):
  File "/Users/finaris/PycharmProjects/test/test/test.py", line 14, in <module>
    c.request('GET', '/api/config/v1/aaa/users', …
Run Code Online (Sandbox Code Playgroud)

python ssl https cisco

29
推荐指数
6
解决办法
8万
查看次数

将StringIO写入Tempfile

我正在尝试使用ruby从url读取图像,然后将其保存Tempfile到以后进行处理.

require 'open-uri'

url = 'http://upload.wikimedia.org/wikipedia/commons/8/89/Robie_House.jpg'
file = Tempfile.new(['temp','.jpg'])
stringIo = open(url)
# this is part I am confused about how to save StringIO to temp file?
file.write stringIo
Run Code Online (Sandbox Code Playgroud)

这不起作用,导致temp.jpg无效的图像.不知道如何继续这个.

谢谢

ruby io

20
推荐指数
1
解决办法
1万
查看次数

是否存在强制竞争条件的C测试框架?

是否存在强制竞争条件的C测试框架?

或者就C++和Java而言.

c concurrency

12
推荐指数
1
解决办法
224
查看次数

在模块中使用`require`而不是在顶部有什么好处?

通常,我将大多数require语句放在文件的顶部.在阅读Poltergeist的源代码时,我注意到以下内容

module Capybara
  module Poltergeist
    require 'capybara/poltergeist/utility'
    require 'capybara/poltergeist/driver'
    require 'capybara/poltergeist/browser'
    # more requires
  end
end
Run Code Online (Sandbox Code Playgroud)

实际来源

使用require这种方式有什么好处?

ruby

12
推荐指数
1
解决办法
2285
查看次数

从flask端点长时间运行脚本

我一直在试着想出这个,希望其他人已经遇到过这个并且知道如何解决它:)

我正在尝试构建一个非常简单的Flask端点,只需要调用一个长时间运行的阻塞php脚本(想想while true {...}).我尝试了几种不同的方法来异步启动脚本,但问题是我的浏览器实际上从未收到响应,即使执行了运行脚本后生成响应的代码.

我同时使用尝试multiprocessingthreading,既不似乎工作:

# multiprocessing attempt
@app.route('/endpoint')
def endpoint():
  def worker():
    subprocess.Popen('nohup php script.php &', shell=True, preexec_fn=os.setpgrp)

  p = multiprocessing.Process(target=worker)
  print '111111'
  p.start()
  print '222222'
  return json.dumps({
    'success': True
  })

# threading attempt
@app.route('/endpoint')
def endpoint():
  def thread_func():
    subprocess.Popen('nohup php script.php &', shell=True, preexec_fn=os.setpgrp)

  t = threading.Thread(target=thread_func)
  print '111111'
  t.start()
  print '222222'
  return json.dumps({
    'success': True
  })
Run Code Online (Sandbox Code Playgroud)

在这两种情况下我看到的111111222222,但我的浏览器仍然挂在从端点的响应.我已尝试p.daemon = True过这个过程,p.terminate()但没有运气.我曾希望在不同的shell中使用nohup启动一个脚本,并且单独的进程/线程可以正常工作,但不知何故Flask或uWSGI受其影响.

更新

由于这在我的Mac上本地工作,当我直接启动我的Flask应用程序并直接 …

python flask uwsgi python-2.7

10
推荐指数
2
解决办法
977
查看次数

在正则表达式中间使用插入符号或美元符号是否有意义?

请考虑以下正则表达式:

/xyz^abc/
/xyz$abc/
Run Code Online (Sandbox Code Playgroud)

这些会匹配什么?

我知道

  • ^当在正则表达式的开头使用时,caret()匹配行的开头
  • 美元符号($),当在正则表达式的末尾使用时,匹配行的结尾
  • caret(^),当用作字符类的第一个字符时,否定该类

我相信给定的正则表达式永远不会匹配,但我不确定.

regex

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

如何降级numpy?

我有错误

TypeError: slice indices must be integers or None or have an __index__ 
method
Run Code Online (Sandbox Code Playgroud)

并搜索解决方案,并得到我需要降级numpy的版本,然后尝试使用此命令

python
import numpy 
numpy.__version__
Run Code Online (Sandbox Code Playgroud)

并得到

>>> numpy.__version__
'1.14.5'
Run Code Online (Sandbox Code Playgroud)

但是当我使用

pip show numpy
Name: numpy
Version: 1.11.0
Summary: NumPy: array processing for numbers, strings, records, and 
objects.
Home-page: http://www.numpy.org
Author: NumPy Developers
Author-email: numpy-discussion@scipy.org
License: BSD
Location: /usr/local/lib/python3.4/dist-packages
Requires: 
Required-by: 
Run Code Online (Sandbox Code Playgroud)

现在python使用的是什么版本?

指令

$ python3 -m pip --version
$ pip --version 
pip 18.0 from /usr/local/lib/python3.4/dist-packages/pip (python 3.4)
Run Code Online (Sandbox Code Playgroud)

$ python -m pip --version
pip 18.0 from /usr/local/lib/python2.7/dist-packages/pip …
Run Code Online (Sandbox Code Playgroud)

python numpy jupyter-notebook

7
推荐指数
3
解决办法
1万
查看次数

是否还需要document.getElementById('id')或$('#id')来按ID选择元素?

我今天遇到了这个要点,并在评论中提到了这一点

var log = document.getElementById('log');
Run Code Online (Sandbox Code Playgroud)

是不必要的,因为在Javascript中你只能log用来访问DOM元素.所有浏览器都是如此吗?这种技术有名称/参考吗?

html javascript dom

6
推荐指数
2
解决办法
413
查看次数

在 __enter__ 中输入上下文管理器

将上下文管理器定义为函数,可以很容易地以编程方式从其中输入一个单独的(或递归的)上下文管理器,如下所示:

@contextmanager
def enter(times):
    if times:
        with enter(times - 1) as tup:
            print 'entering {}'.format(times)
            yield tup + (times,)
            print 'exiting {}'.format(times)
    else:
        yield ()
Run Code Online (Sandbox Code Playgroud)

运行这个:

In [11]: with enter(4) as x:
....:     print x
....:
entering 1
entering 2
entering 3
(1, 2, 3)
exiting 3
exiting 2
exiting 1
Run Code Online (Sandbox Code Playgroud)

所有出入境记账都为您完成,多好啊!但是如果你有一个类,而不是一个函数怎么办?

class Enter(object):
    def __init__(self, times):
        self.times = times

    def __enter__(self):
        print 'entering {}'.format(self.times)
        if self.times:
            with Enter(self.times - 1) as tup:  # WRONG
                return tup + (self.times,)
        return …
Run Code Online (Sandbox Code Playgroud)

python macros contextmanager

6
推荐指数
1
解决办法
3769
查看次数