小编Bas*_*asj的帖子

使用wxPython的自定义滑块小部件

我需要做一个

slider = wx.Slider(self, 100, 25, 1, 100, (30, 60), (250, -1), wx.SL_HORIZONTAL)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

具有透明背景(因为它出现在具有不均匀背景的面板上).

更一般地说,如何才能将其外观改为这样的?

在此输入图像描述

(.png如果需要,我可以使用小部件元素的文件.)

python wxwidgets wxpython slider custom-controls

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

为什么RewriteCond%{REQUEST_FILENAME}!-d是强制性的?

为什么这.htaccess在访问时有效example.com/mywebsite/

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php
Run Code Online (Sandbox Code Playgroud)

而这失败了(404):

RewriteEngine On
RewriteRule ^(.*)$ index.php
Run Code Online (Sandbox Code Playgroud)

我认为第二种解决方案也应该有效.

apache .htaccess

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

如何在 Mod_Python 中通过 POST 或 GET 发送数据?

使用 JS,我发送一个 AJAX 发布请求。

 $.ajax(
        {method:"POST",
        url:"https://my/website/send_data.py",
        data:JSON.stringify(data),
        contentType: 'application/json;charset=UTF-8'
Run Code Online (Sandbox Code Playgroud)

在我的 Apache2 mod_Python 服务器上,我希望我的 python 文件能够访问data. 我怎样才能做到这一点?

def index(req):
    # data = ??
Run Code Online (Sandbox Code Playgroud)

PS:这里是如何重现问题。创建testjson.html

<script type="text/javascript">
xhr = new XMLHttpRequest();
xhr.open("POST", "testjson.py");
xhr.setRequestHeader("Content-Type", "application/json");
xhr.onreadystatechange = function(res) { console.log(xhr.responseText); };
xhr.send(JSON.stringify({'foo': '0', 'bar': '1'}));
</script>
Run Code Online (Sandbox Code Playgroud)

并创建testjson.py包含:

from mod_python import apache 

def index(req):
    req.content_type = "application/json"
    req.write("hello")
    data = req.read()
    return apache.OK
Run Code Online (Sandbox Code Playgroud)

创建一个.htaccess包含:

AddHandler mod_python .py
PythonHandler mod_python.publisher
Run Code Online (Sandbox Code Playgroud)

结果如下:

testjson.html:10 POST http://localhost/test_py/testjson.py 501(未实现)

在此处输入图片说明

python apache post mod-python

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

YAML 中的 docker-compose.yml 破折号语法

docker-compose.yml文件中,为什么某些枚举使用 dash 完成-,而其他枚举则没有?

services:
  web:           # the enumeration of [build, ports, volumes, environment] doesn't use a -
    build: .
    ports:             
      - "5000:5000"     # why the - here?  could we remove it and have ports: "5000:5000"?
    volumes:
      - .:/code         # why the - here?
    environment:
      FLASK_ENV: development        # why no - here?
  redis:
    image: "redis:alpine"
Run Code Online (Sandbox Code Playgroud)

另一个例子:

version: '2'
services:
   db:
     image: mysql:5.7
     volumes:
       - ./mysql:/var/lib/mysql                # could we remove this - prefix?
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress …
Run Code Online (Sandbox Code Playgroud)

yaml docker docker-compose

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

读取.wav文件的标记

我想在.wav文件中使用标记.

它似乎得到以下aifc模块的支持getmarkers():http://docs.python.org/2/library/aifc.html#aifc.aifc.getmarkers(对于.aiff文件),但不支持wave模块(http:// docs. python.org/2/library/wave.html?highlight=wave#wave.Wave_read.getmarkers).

我们怎样才能读取 .wav文件的标记

python audio wav markers

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

比较2个字符串而不考虑Python中的重音

我想比较2个字符串,True如果字符串相同,则不考虑重音.

示例:我想以下代码打印'Bonjour'

if 'séquoia' in 'Mon sequoia est vert':
    print 'Bonjour'
Run Code Online (Sandbox Code Playgroud)

python string

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

在使用py2exe时,使用Numpy会创建一个tcl文件夹

py2exe在我的Python程序上使用时,我得到一个可执行文件,但也是一个tcl\文件夹.

这很奇怪,因为我根本不使用tcl/tk,而且tkinter在我的代码中没有任何相关内容.

为什么导入numpy负责添加此tcl\文件夹?如何防止这种情况发生?


test.py

import numpy

print 'hello'
Run Code Online (Sandbox Code Playgroud)

PY2EXE代码

from distutils.core import setup
import py2exe

setup(script_args = ['py2exe'],   windows=[{'script':'test.py'}], options = {'py2exe': {'compressed':1,'bundle_files': 1}}, zipfile = None)
Run Code Online (Sandbox Code Playgroud)

python numpy py2exe

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

在主线程中调用一次时,Python线程运行两次

if __name__ == '__main__':

    t = threading.Thread(target = authtarget)
    t.daemon = True
    t.start()
    print 'running thread'
    app.run(debug=True)
Run Code Online (Sandbox Code Playgroud)

这个主目录位于我们的服务器中,其中app.run将启动服务器并能够处理请求。我们正在创建的线程是一个计时器,它每5秒检查一次if语句。但是,t.start()将创建两个线程,而不是一个线程。我们曾尝试将t.start()更改为t.run(),但是这样做时,我们永远都不会进入需要运行服务器的app.run。

def authtarget():
    sp  = Spotify()
    db = Database()
    resultList = []
    while True:
        time.sleep(5)
        sp.timer(204) 
Run Code Online (Sandbox Code Playgroud)

timer()是我们需要每5秒调用一次的函数。但是,使用我们当前的代码,timer被调用两次,而不是每5秒一次

python multithreading bottle flask

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

如何更改 distutils 的输出目录?

python setup.py build与此代码一起使用时:

import setuptools
from distutils.core import setup
from Cython.Build import cythonize
setup(ext_modules=cythonize("module1.pyx", build_dir="temp"))
Run Code Online (Sandbox Code Playgroud)

.pyd 库是在 .\build\lib.win-amd64-2.7\module1.pyd.

如何使输出.pyd文件到当前文件夹 .

注意:cythonize参数build_dir="temp"有效:module1.ccython 生成的文件temp\确实在。我的问题是关于输出 .pyd 文件。

python distutils setuptools cython

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

带有 WebAssembly 的浏览器中的 Python,无需重新编译

我看过Compiling Python to WebAssembly及其各种答案、各种项目(EmPython、EmCPythoncpython-emscripten、Pyodide 等),但大多数时候,它需要重新编译或使用 Docker 等。

有没有办法在浏览器中使用 Python(使用 WebAssembly),使其工作方式如下:

  • 您只需将foo.jsfoo.wasmindex.html或类似的即用型文件放在一个目录中

  • main.py在目录下放一个文件, WebAssembly Python解释index.html器会在我们在浏览器中打开时自动启动,直接在浏览器中显示Python stdout

  • 您可以通过简单地添加 .py 文件来导入标准 Python 模块 main.py

例子:

pythoninbrowser.js
pythoninbrowser.wasm
index.html
main.py    --> containing "import bs4"
bs4/
    __init__.py
    ...all the rest of the BeautifulSoup module...
Run Code Online (Sandbox Code Playgroud)

另请参阅此问题

python emscripten webassembly

7
推荐指数
0
解决办法
1166
查看次数