小编ack*_*ack的帖子

使用 gcc 编译 cython:#include "ios" 中没有这样的文件或目录

给定一个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。numpyspacy并且cython都是通过conda.

python cython

9
推荐指数
2
解决办法
3996
查看次数

类型错误:找不到必需的参数“mat”(位置 2)

我有下面的代码和 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)

python opencv cv2

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

无法使用 svglib 将 svg 转换为 png

当我将 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)

svg python-3.x

5
推荐指数
1
解决办法
1227
查看次数

选择不在切片中的列表元素

说我有一个清单

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)

但是我怎样才能类似地选择除这些之外的所有元素呢?

python list slice

4
推荐指数
1
解决办法
3291
查看次数

windows cmd 如何设置解析变量名?

如果我运行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 | moreSET UNDEFINED …

windows cmd batch-file environment-variables

4
推荐指数
1
解决办法
90
查看次数

“TeleBot”对象没有属性“message_handler”

当我运行下面的代码时,显示以下错误消息:'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 上写的。我想制作一个可以提供贴纸的电报机器人。

python telegram-bot

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

如何在vs code中更改jupyter笔记本的字体大小?

我正在使用 jupyter 笔记本为虚拟讲座创建 python 笔记(某种程度)。我喜欢使用 vscode 而不是 jupyter lab。但不幸的是,Markdown 输出的字体太小(无法在虚拟通话的参与者屏幕上看到)。

在使用 jupyter lab 时,我曾经缩放整个浏览器。但我无法在 vscode 中执行此操作,也找不到任何更改其字体大小的设置。

更改字体大小的设置仅适用于 VS Code 编辑器窗口。

有谁知道如何增加尺寸。

在此输入图像描述

PS-我知道我们可以#在每一行上使用来增加其大小,但我不能在每一行之前放置#,因为我必须制作一个相当大的文档。您可以从图像中了解标准尺寸有多小。

python visual-studio-code jupyter-notebook

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

python 中类似数字模式的最佳方法是什么?

我正在尝试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)

但我不认为这是最好的方法,我试图寻找一些更好的方法,但无法找到合适的方法,所以我来到这里,是否有更好的方法来解决这个问题?

python

4
推荐指数
1
解决办法
99
查看次数

在 ubuntu 18.04 中运行 odoo-11 时出现样式错误

我在 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)

erp odoo-11 ubuntu-18.04

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

为一堆静态方法提供命名空间的最佳实践是什么?

我需要一个模块内的命名空间,用于许多不同的静态方法做类似的工作。从我的研究中我了解到,在 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 static-methods python-pattern

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

模块导入自身时出现属性错误 - 在某些计算机上有效

我继承了一些我正在尝试运行的 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)

python python-module python-import

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

如何从包含公共数字对(序列)的其他两个数组创建一个数组?

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)

python

0
推荐指数
1
解决办法
47
查看次数

从 uuid 生成 int

我想从给定的 uuid 生成一个“随机”int。我所关心的是给定 uuid,我将始终得到相同的 int。

我知道 uuid 的范围比 python 中 int 的范围大得多,所以我冒着 2 个不同的 uuid 生成相同 int 的风险,但这是我愿意承担的风险。

所以我的问题是从给定的 uuid 生成这样的 int 的最佳方法是什么?我知道我可以使用 uuid 作为 random() 的种子并生成一个随机 int,但想知道是否有一个“更干净”的解决方案。

python uuid

0
推荐指数
1
解决办法
5714
查看次数