给定一个docprep.pyx简单的文件
from spacy.structs cimport TokenC
print("loading")
Run Code Online (Sandbox Code Playgroud)
并试图通过
cythonize -3 -i docprep.pyx
Run Code Online (Sandbox Code Playgroud)
我收到以下错误消息
docprep.c:613:10: fatal error: ios: No such file or directory
#include "ios"
^~~~~
compilation terminated
Run Code Online (Sandbox Code Playgroud)
从路径中可以看出,该系统安装了 Python 3.7 的 Anaconda。numpy,spacy并且cython都是通过conda.
我有下面的代码和 cv2 。此代码是从https://github.com/dipakkr/3d-cnn-action-recognition下载的。我想使用 cv2.imshow 来可视化它获得的视频的帧。但我收到以下错误。问题是什么?我怀疑这段代码是否真的能够读取视频,因为输出是一个零数组。
def video3d(self, filename, color=False, skip=True):
cap = cv2.VideoCapture(filename)
#ret, frame=cap.read()
#cv2.imshow('frame', frame)
nframe = cap.get(cv2.CAP_PROP_FRAME_COUNT) #Returns the specified VideoCapture property ,,Number of frames in the video file
print (nframe, "nframe")
if skip:
frames = [x * nframe / self.depth for x in range(self.depth)]
print (frames, "frameeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeees")
else:
frames = [x for x in range(self.depth)]
print (frames, "frameseeeeeeeeeeeeeeeeeeeeeeeeeeeeeee2")
framearray = []
for i in range(self.depth):
cap.set(cv2.CAP_PROP_POS_FRAMES, frames[i]) #Sets a property in the VideoCapture. ,,0-based …Run Code Online (Sandbox Code Playgroud) 当我将 svg 转换为 png 时,我收到不完整的 png 文件和错误。请有人帮忙。
from reportlab.graphics import renderPM
from svglib.svglib import svg2rlg
svg_file = 'svgfile.svg'
drawing = svg2rlg(svg_file)
renderPM.drawToFile(drawing, "new_file.png", fmt="PNG")
Run Code Online (Sandbox Code Playgroud)
Can't handle color: url(#a)
Can't handle color: url(#b)
Can't handle color: url(#c)
Run Code Online (Sandbox Code Playgroud) 说我有一个清单
Q = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
Run Code Online (Sandbox Code Playgroud)
我相信我可以使用扩展切片符号提取第一个和每第九个值:
Q[::9]
Run Code Online (Sandbox Code Playgroud)
这应该给出:
[0,9,18]
Run Code Online (Sandbox Code Playgroud)
但是我怎样才能类似地选择除这些之外的所有元素呢?
如果我运行set如下:
C:\Users\vagrant>SET UNDEFINED=foo
C:\Users\vagrant>SET UNDEFINED
UNDEFINED=foo
C:\Users\vagrant>SET UNDEFINED
Environment variable UNDEFINED not defined
C:\Users\vagrant>SET UNDEFINED | more
UNDEFINED=foo
C:\Users\vagrant>SET UNDEFINED >nul
C:\Users\vagrant>SET UNDEFINED >nul
Environment variable UNDEFINED not defined
C:\Users\vagrant>SET UNDEFINED | more
Environment variable UNDEFINED not defined
C:\Users\vagrant>SET UNDEFINED >nul | more
Environment variable UNDEFINED not defined
C:\Users\vagrant>SET UNDEFINED >nul| more
C:\Users\vagrant>SET UNDEFINED 2>nul | more
C:\Users\vagrant>SET UNDEFINED 2>nul| more
UNDEFINED=foo
Run Code Online (Sandbox Code Playgroud)
注意,上面的第二个命令是SET UNDEFINED ,后面有两个空格。而且SET UNDEFINED >nul ,SET UNDEFINED >nul | more,SET UNDEFINED …
当我运行下面的代码时,显示以下错误消息:'TeleBot' object has no attribute 'message_handler'。
import telebot
from telebot import types
keyboard1 = telebot.types.ReplyKeyboardMarkup()
keyboard1.row('Ok', 'Bye')
bot = telebot.TeleBot('API')
@bot.message_handler(commands=['start'])
def start_message(message):
bot.send_message(message.chat.id, 'Hi what do you want /start', reply_markup=keyboard1)
@bot.message_handler(content_types=['text'])
def send_text(message):
if message.text.lower() =='Hello':
bot.send_message(message.chat.id, message.text.upper() )
elif message.text.lower() =='Bye':
bot.send_message(message.chat.id,'see you soom' )
elif message.text.lower() == 'I love you':
bot.send_sticker(message.chat.id, 'API')
@bot.message_handler(content_types=['sticker'])
def sticker_id(message):
print(message)
bot.polling(none_stop=True)
Run Code Online (Sandbox Code Playgroud)
那么有什么问题吗?我已经安装了 pip 和其他。我是在 python IDLE 上写的。我想制作一个可以提供贴纸的电报机器人。
我正在使用 jupyter 笔记本为虚拟讲座创建 python 笔记(某种程度)。我喜欢使用 vscode 而不是 jupyter lab。但不幸的是,Markdown 输出的字体太小(无法在虚拟通话的参与者屏幕上看到)。
在使用 jupyter lab 时,我曾经缩放整个浏览器。但我无法在 vscode 中执行此操作,也找不到任何更改其字体大小的设置。
更改字体大小的设置仅适用于 VS Code 编辑器窗口。
有谁知道如何增加尺寸。
PS-我知道我们可以#在每一行上使用来增加其大小,但我不能在每一行之前放置#,因为我必须制作一个相当大的文档。您可以从图像中了解标准尺寸有多小。
我正在尝试Python中的模式 if n == 6
1 2 3 4 5
2 3 4 5 1
3 4 5 1 2
4 5 1 2 3
5 1 2 3 4
Run Code Online (Sandbox Code Playgroud)
经过一番思考后,我这样做了 --->
n = 6
for i in range(1,n):
x = 1
countj = 0
for j in range(i,n):
countj +=1
print(j,end=" ")
if j == n-1 and countj < n-1 :
while countj < n-1:
print(x , end =" ")
countj +=1
x +=1
print()
Run Code Online (Sandbox Code Playgroud)
但我不认为这是最好的方法,我试图寻找一些更好的方法,但无法找到合适的方法,所以我来到这里,是否有更好的方法来解决这个问题?
我在 ubuntu 18.04 上运行 odoo 11.0,当启动服务器时,网站没有正确显示,我收到了这个错误:
Style error
The style compilation failed, see the error below. Your recent actions may be the cause, please try reverting the changes you made.
(b'', b'The "--no-js" argument is deprecated, as inline JavaScript is disabled by default. Use "--js" to enable inline JavaScript (not recommended).
ParseError: Unrecognized input. Possibly missing '(' in mixin call. in - on line 1314, column 29:
1313 .o-caret-down(@caret-width: @caret-width-base) {
1314 .utils-caret-boilerplate;
1315 border-bottom: 0;
')This error occured while …Run Code Online (Sandbox Code Playgroud) 我需要一个模块内的命名空间,用于许多不同的静态方法做类似的工作。从我的研究中我了解到,在 Python 编程中,拥有一个充满静态方法的类被认为是反模式:
class StatisticsBundle:
@staticmethod
def do_statistics1(params):
pass
@staticmethod
def do_statistics2(params):
pass
Run Code Online (Sandbox Code Playgroud)
如果这不是一个好的解决方案,那么最好的做法是允许我getattr(SomeNameSpace, func_name)在同一个模块中进行命名空间查找吗?
我继承了一些我正在尝试运行的 python 脚本。其中包括一些自定义模块,在导入其中一个模块时出现错误,这似乎是由于其中一个模块导入自身所致。我觉得奇怪的是它在一台计算机上可以运行,但在另一台计算机上却不能。
目录结构如下:
/path/to/packages/python_packages/x
|
/path/to/packages/python_packages/x/mod1.py
/path/to/packages/python_packages/x/mod2.py
/path/to/packages/python_packages/x/mod3.py
Run Code Online (Sandbox Code Playgroud)
我添加(并使用 print(sys.path) 交叉检查)路径,如下所示:
sys.path.append("/path/to/packages/python_packages/")
Run Code Online (Sandbox Code Playgroud)
然后我这样做:
import x.mod1 as mod1
import x.mod2 as mod2
import x.mod3 as mod3
Run Code Online (Sandbox Code Playgroud)
导入 mod1 有效。
导入 mod2 不起作用:
AttributeError: module 'x' has no attribute mod2
Run Code Online (Sandbox Code Playgroud)
Traceback 抱怨 mod2.py 中出现的这一行:
import x.mod2 as mod2
Run Code Online (Sandbox Code Playgroud)
导入 mod3 不起作用,因为它需要导入 mod2,其操作方式与上面相同。
在 ipython 的回溯中,我可以看到它找到了正确的 python 文件,因为它打印出了文件中的代码及其名称、完整路径。
我尝试删除所有init .py 和pycache。
我尝试在另一台计算机上运行它,在那里我可以毫无问题地导入模块。
在有问题的计算机上,我有Python 3.6.8,在CentOS7(3.10.0-1160.21.1.el7.x86_64)上运行,在它工作的计算机上,我有Python 3.9.2,在Manjaro(5.4)上运行.108-1-曼贾罗)。
我在出现问题的计算机上没有 root 访问权限。
完整的回溯如下(我更改了路径和文件名以与上面的解释一致):
In [9]: import x.mod2 as mod2
Run Code Online (Sandbox Code Playgroud)
AttributeError Traceback (most recent …Run Code Online (Sandbox Code Playgroud) a = [1,2,3,4,5,6,8]
b = [6,8,9,4,5,3,2,1]
Run Code Online (Sandbox Code Playgroud)
最后的结果应该是
c = [6,8,4,5]
Run Code Online (Sandbox Code Playgroud)
这个数组在两个数组中都包含相同的数字对 - 如何在python中编写这种代码?
我只知道如何创建具有重复值的数组
a = [1,2,3,4,5,6,8]
b = [6,8,9,4,5,3,2,1]
c = [x for x in a if x in b]
print (c)
Run Code Online (Sandbox Code Playgroud) 我想从给定的 uuid 生成一个“随机”int。我所关心的是给定 uuid,我将始终得到相同的 int。
我知道 uuid 的范围比 python 中 int 的范围大得多,所以我冒着 2 个不同的 uuid 生成相同 int 的风险,但这是我愿意承担的风险。
所以我的问题是从给定的 uuid 生成这样的 int 的最佳方法是什么?我知道我可以使用 uuid 作为 random() 的种子并生成一个随机 int,但想知道是否有一个“更干净”的解决方案。
python ×10
batch-file ×1
cmd ×1
cv2 ×1
cython ×1
erp ×1
list ×1
odoo-11 ×1
opencv ×1
python-3.x ×1
slice ×1
svg ×1
telegram-bot ×1
ubuntu-18.04 ×1
uuid ×1
windows ×1