我想将目录从主机复制到容器,但无法使用以下命令:
$ docker cp -r <a-dir> <a-container-ID>:/destination/path
unknown shorthand flag: 'r' in -r
Run Code Online (Sandbox Code Playgroud)
使用scp -rshell 命令我可以做到,所以我也期待docker cp -r。
如何在不使用 make compress .tar 文件及其提取物的情况下克服它?
我使用的是uvloop与websockets作为
import uvloop
coro = websockets.serve(handler, host, port) # creates new server
loop = uvloop.new_event_loop()
loop.create_task(coro)
loop.run_forever()
Run Code Online (Sandbox Code Playgroud)
一切正常,我只是想知道如果不将全局asyncio政策设置为,是否可以遇到一些意想不到的问题uvloop。据我了解,只要不使用全局asyncio方法,只要不使用全局方法,就可以设置全局策略,而直接使用传递的事件循环。那是对的吗?
通过使用map函数multiprocessing库中当使用 2 个以上的进程时,我看不到执行时间的差异。我正在使用 4 个内核运行程序。
实际代码非常简单,计算前 4000 个斐波那契数 4 次(= 内核数量)。它在 N 个内核之间平均分配工作(例如,当使用具有 2 个进程的池时,每个进程将计算前 4000 个斐波那契数次)。整个过程是在 N = 1 到核心数量的情况下完成的。
输出,每一行的核心数量和相应的执行时间(以秒为单位)是:
有谁知道为什么在超过 2 个内核的情况下执行时间没有减少?实际代码是:
import multiprocessing
from time import time
def F(_):
for n in range(4 * 10 ** 3):
a, b = 0, 1
for i in range(0, n):
a, b = b, a + b
return
def pool_fib():
n_cores = multiprocessing.cpu_count()
args = list(range(multiprocessing.cpu_count()))
for i in range(1, n_cores …Run Code Online (Sandbox Code Playgroud) 我找到了几种将 Integer 和 Float 值转换为二进制的方法,它们各有各的问题。我需要在 0 和 10,000 的值之间输入一个整数/浮点数,转换为16 位(精确)二进制字符串,随机操作这些位,然后转换回整数/浮点数(取决于参数)。
但是,我一直在使用以下代码:
def convert_to_binary(value):
'''
Converts a float to a 16-bit binary string.
'''
[d] = struct.unpack('>Q', struct.pack('>d', value))
return str('{:016b}'.format(d))
def convert_back(bin_num):
'''
Converts binary string to a float.
'''
print type(bin_num)
print bin_num
bf = int_to_bytes(int(bin_num, 2), 8) # 8 bytes needed for IEEE 754 binary64.
print struct.unpack('>d', bf)[0]
return struct.unpack('>d', bf)[0]
# return struct.unpack('d', struct.pack('Q', bin_num))[0]
#bin_num.pack('B*').unpack('g').first
def int_to_bytes(n, minlen=0): # Helper function
''' …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 pythonanywhere 通过项目部署我的 Django 项目,但我遇到了问题并且真的陷入了困境。谁能帮我解决这个问题。图像附加到我的setting.py 文件的路径。settings.py 的路径。
Webttab上的WSGI.py配置是:
path = '/home/technewsandblog/blog/blog_project/mysite'
if path not in sys.path:
sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings'
# then:
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
Run Code Online (Sandbox Code Playgroud)
我重新加载后显示的错误是:
Error running WSGI application
2018-07-08 20:30:23,383: ModuleNotFoundError: No module named 'mysite'
2018-07-08 20:30:23,383: File "/var/www/technewsandblog_pythonanywhere_com_wsgi.py", line 18, in <module>
2018-07-08 20:30:23,383: application = get_wsgi_application()
2018-07-08 20:30:23,384:
2018-07-08 20:30:23,384: File "/home/technewsandblog/.virtualenvs/myDjangoEnv/lib/python3.6/site-packages/django/core/wsgi.py", line 12, in get_wsgi_application
2018-07-08 20:30:23,384: django.setup(set_prefix=False)
2018-07-08 20:30:23,384:
2018-07-08 20:30:23,384: File "/home/technewsandblog/.virtualenvs/myDjangoEnv/lib/python3.6/site-packages/django/__init__.py", line 19, in setup
2018-07-08 …Run Code Online (Sandbox Code Playgroud) 我有一个带有python:3.6-alpine内核的容器,我在用pip安装pyzmq时遇到问题:
FROM python:3.6-alpine
RUN mkdir /code
RUN apk add vim
WORKDIR /
ADD . /code
Run Code Online (Sandbox Code Playgroud)
version: '3'
services:
battery_monitoring:
build: .
image: bm:1.0.0
container_name: battery_monitoring
restart: unless-stopped
volumes:
- .:/code
tty: true
Run Code Online (Sandbox Code Playgroud)
当我在此容器上安装几个Python库时,我没有任何问题,但是在pyzmq库中,出现错误:
$ docker-compose build
$ docker-compose up -d
$ docker exec -it <This-container-ID> sh
Run Code Online (Sandbox Code Playgroud)
pip install pyserial
pip install easydict
Run Code Online (Sandbox Code Playgroud)
上面的命令也安装了,但是在pyzmq安装中,我遇到了以下错误:
pip install pyzmq
Run Code Online (Sandbox Code Playgroud)
结果的一部分:
----------------------------------------
Command "/usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-545my4q5/pyzmq/setup.py';f=getattr(tokenize, 'open', …Run Code Online (Sandbox Code Playgroud) 我有一个Grafana Docker容器,当我在此容器上创建交互式shell时,该用户不是超级用户,因此我无法执行需要sudo许可的操作:
docker exec -it grafana_service bash
Run Code Online (Sandbox Code Playgroud)
在此容器中:
$ su
password:
Run Code Online (Sandbox Code Playgroud)
我没有密码!
或者我不能使用from chmod 777对文件系统等进行完全许可。
这是我的码头工人组成:
version: '3'
services:
grafana_sevice:
image: grafana/grafana:5.1.3
container_name: grafana_service
restart: unless-stopped
ports:
- "3010:3000"
links:
- another_service
Run Code Online (Sandbox Code Playgroud) 我正在尝试为人脸识别项目或程序设置检测器,但始终出现此错误:
TypeError: an integer is required (got type tuple)
Run Code Online (Sandbox Code Playgroud)
我也尝试过更改:
cv2.putText(img, str(id), (x, y + h), font, 255)
至
cv2.putText(img, name, (x, y + h), font, 2, (0, 255, 0), 2)
这是我的代码:
import cv2
import numpy as np
faceDetect=cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
cam=cv2.VideoCapture(0)
rec = cv2.face.LBPHFaceRecognizer_create()
rec.read("trainer/training_data.yml")
id=0
font=(cv2.FONT_HERSHEY_SIMPLEX,1,1,0,1)
while(True):
ret,img=cam.read()
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
faces=faceDetect.detectMultiScale(gray,1.3,5)
for(x,y,w,h) in faces:
cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)
id,conf=rec.predict(gray[y:y+h,x:x+w])
cv2.putText(img,str(id),(x,y+h),font,255)
cv2.imshow("FACEDETECTIONPT1",img)
if(cv2.waitKey(1)==ord('q')):
break
cam.release()
cv2.destroyAllWindows
Run Code Online (Sandbox Code Playgroud) 我想使用Python编译(.pyc或__pycache__)运行一个Pythonic项目。为了在Python2中做到这一点,我没有任何问题。
这是Python2项目中的简化示例:
项目树:
test2
??? main.py
??? subfolder
??? __init__.py
??? sub.py
Run Code Online (Sandbox Code Playgroud)编译:
python -m compileall test2
Run Code Online (Sandbox Code Playgroud)编译后的项目树:
test2
??? main.py
??? main.pyc
??? subfolder
??? __init__.py
??? __init__.pyc
??? sub.py
??? sub.pyc
Run Code Online (Sandbox Code Playgroud)如您所见,几个.pyc手动生成。现在,我可以正常运行该项目main.pyc,该项目与sub.py:有关系:
python main.pyc
Run Code Online (Sandbox Code Playgroud)
出:
Hi
Bye
Run Code Online (Sandbox Code Playgroud)main.py内容:
from subfolder import sub
print('Bye')
Run Code Online (Sandbox Code Playgroud)sub.py内容:
print('Hi')
Run Code Online (Sandbox Code Playgroud)现在,我想在Python3项目中重试此行为。
这是一个简化的asyncio(在Python3中可用)项目:
项目树:
test3
??? main.py
??? subfolder
??? __init__.py
??? …Run Code Online (Sandbox Code Playgroud)我是python的新手,但是有一个使用uvloop的异步python应用程序,它使用我创建的C api模块,它也需要访问异步循环.
1)asyncio还没有这个c-api?任何在C中使用事件循环的hack?这是在哪里讨论?
2)uvloop使用我在C中熟悉的libuv.如果我可以抓取uv_loop_t指针,我可以挂钩循环.我想我可以:
A)使用PyObject*到uvloop的循环计算uv_loop_t*的偏移并使用它?假设我知道PyObject_HEAD的长度?
libuv_loop = (uv_loop_t*)((void*)(loop)+0x8);
struct __pyx_obj_6uvloop_4loop_Loop {
PyObject_HEAD
uv_loop_t *uvloop;
Run Code Online (Sandbox Code Playgroud)
B)或非hacky修改uvloop以暴露循环指针.因为我从来没有看过cython代码,所以我完全无能为力.我可以在循环上创建一个python函数,从我的C代码调用它并获取C指针吗?喜欢:
(uv_loop_t*)PyObject_CallFunctionObjArgs( getLoop, NULL )
Run Code Online (Sandbox Code Playgroud)
通过在这里添加getLoop:
https://github.com/MagicStack/uvloop/blob/master/uvloop/loop.pyx
cdef uv.uv_loop_t* _getLoop(self):
return self.uvloop
Run Code Online (Sandbox Code Playgroud) python ×4
docker ×3
python-3.x ×2
uvloop ×2
alpine-linux ×1
binary ×1
c-api ×1
compilation ×1
cpython ×1
cython ×1
django ×1
docker-copy ×1
grafana ×1
opencv ×1
pip ×1
pyc ×1
python-3.7 ×1
pyzmq ×1
shell ×1
ubuntu ×1