我正要尝试从 GitHub 下载的 Python 包,发现它没有 . setup.py
,所以我无法安装它
pip install -e <folder>
Run Code Online (Sandbox Code Playgroud)
相反,该包有一个pyproject.toml
文件,该文件似乎与setup.py
通常的条目非常相似。
谷歌搜索引导我进入PEP-518,它setup.py
在基本原理部分给出了一些批评。但是,它没有明确说明setup.py
应该避免使用 ,或者pyproject.toml
完全取代setup.py
.
是pyproject.toml
用来代替的东西setup.py
吗?或者一个包应该同时带有 apyproject.toml
和 a setup.py
?
如何安装pyproject.toml
处于可编辑状态的项目?
我试图找到一个python软件包,该软件包将提供一个选项,以使自然平滑样条线与用户可选的平滑因子相匹配。有没有实现的方法?如果没有,您将如何使用可用的工具自己实施?
所谓自然样条曲线,是指应该满足以下条件:拟合函数在端点处的二阶导数为零(线性)。
通过平滑样条曲线,我的意思是样条曲线不应被“插值”(通过所有数据点)。我想自己决定正确的平滑系数lambda(请参见Wikipedia页面以平滑样条线)。
我已经使用Plain调试了python脚本大约2年了from IPython import embed; embed()
,并且运行良好。我只是将命令放在要检查的行上,并且在运行脚本时,我将拥有完整的IPython Shell,具有检查变量,定义函数等的能力。最重要的是,IPython Shell附带了变量名制表符。
现在,from IPython import embed; embed()
我不再像总是用定义“暂停行” ,而是让我的python脚本在运行测试时遇到异常时暂停执行。
您如何pytest
以这种方式运行,
# test_somemodule.py
def test_me(some_variable):
x = 1 + some_variable
return x
test_me('I am a string')
Run Code Online (Sandbox Code Playgroud)
(不,您不必像这样为pytest编写测试,但是出于示例目的,这很好。)
pytest --pdb
(未pdbpp
安装)pdb
遇到错误时,这将打开基本外壳程序。但是它没有制表符补全。
-> x = 1 + some_variable
(Pdb) so[<tab_here_produces_tab>]
Run Code Online (Sandbox Code Playgroud)
pytest --pdb
(与 pdbpp
安装)pdbpp
遇到错误时,这将打开基本外壳程序。但是没有制表符补全。
-> x = 1 …
Run Code Online (Sandbox Code Playgroud) 为什么用 python 3.8.5 导入的 matplotlib 不起作用?
我正在运行 anaconda 版本 3,它是 64 位。我得到的错误是:
Matplotlib 安装版本为 3.3.2:
使用缓存的 matplotlib-3.3.2-cp38-cp38-win_amd64.whl (8.5 MB)
Python 3.8.5 (default, Sep 3 2020, 21:29:08) [MSC v.1916 64 bit (AMD64)] :: Ana
conda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Administrator\AppData\Roaming\Python\Python38\site-packages\mat
plotlib\__init__.py", line 139, in <module>
from . import cbook, rcsetup
File "C:\Users\Administrator\AppData\Roaming\Python\Python38\site-packages\mat
plotlib\rcsetup.py", line 26, in <module>
from …
Run Code Online (Sandbox Code Playgroud) import PySimpleGUI as sg\nimport os\n\n layout = [[sg.Text('Velg mappe som skal tas backup av og hvor du vil plassere backupen')],\n [sg.Text('Source folder', size=(15, 1)), sg.InputText(), sg.FolderBrowse()],\n [sg.Text('Backup destination ', size=(15, 1)), sg.InputText(), sg.FolderBrowse()],\n [sg.Text('Made by Henrik og Thomas\xe2\x84\xa2')],\n [sg.Submit(), sg.Cancel()]]\n window = sg.Window('Backup Runner v2.1')\n\n event, values = window.Layout(layout).Read()\n
Run Code Online (Sandbox Code Playgroud)\n当我按下提交按钮时如何调用函数?或任何其他按钮?
\nDash Web 应用程序有一个 dash 应用程序实例,通常命名为app
,并像这样启动:
app = dash.Dash(__name__)
Run Code Online (Sandbox Code Playgroud)
然后,使用callback
装饰器将回调添加到应用程序中:
@app.callback(...)
def my_function(...):
# do stuff.
Run Code Online (Sandbox Code Playgroud)
在您找到的大多数教程中,回调是使用app.py
. 这当然只是 MWE 的做事方式。在实际应用程序中,将代码分离到模块和包将大大提高可读性和可维护性,但天真地将回调和布局分离只会导致循环导入。
从app.py
单页应用程序中分离回调和布局的正确方法是什么?
这是问题的最小(非)工作示例
.
??? my_dash_app
? ??? app.py
? ??? views
? ??? first_view.py
? ??? __init__.py
??? setup.py
Run Code Online (Sandbox Code Playgroud)
import setuptools
setuptools.setup(
name='dash-minimal-realworld',
version='1.0.0',
install_requires=['dash>=1.12.0'],
packages=setuptools.find_packages(),
)
Run Code Online (Sandbox Code Playgroud)
import dash
from my_dash_app.views.first_view import make_layout
app = dash.Dash(__name__)
app.layout = make_layout()
if __name__ == '__main__':
app.run_server(debug=True)
Run Code Online (Sandbox Code Playgroud)
@app.callback(...)
def …
Run Code Online (Sandbox Code Playgroud) 如何使用 Python 将大地测量(纬度、经度、高度)坐标转换为本地切线平面 ENU(东、北、上)坐标?
pyproj 包似乎没有正确的功能......
coordinate-systems coordinate-transformation python-2.7 pyproj
我在 Windows Powershell 上使用 IPython。出于某种原因,字符串文字的颜色是难以辨认的深红色:
为了进行比较,以下是它在 VSCode 上的外观,使用了 powershell “shell”和 Ipython:
IPython 当然使用一些命令来告诉 shell 要使用的颜色。如何将字符串文字颜色修改为浅红色?我希望这是计算机范围(或至少是用户范围)设置。
我安装了 64 位和 32 位 Python。我试图在 VSCode 中使用 32 位 Python.exe 文件创建一个虚拟环境。我在 Python: Select Interpreter 中为我的工作区选择了该版本(即 C:\Program Files (x86)\Python37-32\python.exe)。
然后,我更改了工作区中的 launch.json 文件以包含“python”解释器:
{
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal",
"python": "c:/Program Files (x86)/Python37-32/python.exe"
}
]
}
Run Code Online (Sandbox Code Playgroud)
但是,当我创建虚拟环境时:
py -3 -m venv 32_bit_env
Run Code Online (Sandbox Code Playgroud)
它使用的 python 解释器是来自 C:\Program Files\Python37\python.exe 的 64 位版本,如 pyvenv.cfg 中所示:
home = C:\Program Files\Python37
Run Code Online (Sandbox Code Playgroud)
是否有其他位置可以更改工作区中 python.exe 文件的目录?谢谢你!
出于某种原因导入seaborn
包时,生成可执行文件(.exe)会产生以下ImportError.如何解决这个问题?
Traceback (most recent call last):
File "C:\WinPython-64bit-3.5.2.3Qt5\python-3.5.2.amd64\lib\site-packages\cx_Fr
eeze\initscripts\__startup__.py", line 12, in <module>
__import__(name + "__init__")
File "C:\WinPython-64bit-3.5.2.3Qt5\python-3.5.2.amd64\lib\site-packages\cx_Fr
eeze\initscripts\Console.py", line 21, in <module>
scriptModule = __import__(moduleName)
File "GUI.py", line 22, in <module>
import seaborn as sns
File "C:\WinPython-64bit-3.5.2.3Qt5\python-3.5.2.amd64\lib\site-packages\seabo
rn\__init__.py", line 9, in <module>
from .linearmodels import *
File "C:\WinPython-64bit-3.5.2.3Qt5\python-3.5.2.amd64\lib\site-packages\seabo
rn\linearmodels.py", line 8, in <module>
from scipy.spatial import distance
File "C:\WinPython-64bit-3.5.2.3Qt5\python-3.5.2.amd64\lib\site-packages\scipy
\spatial\__init__.py", line 93, in <module>
from .ckdtree import *
ImportError: No module named 'scipy.spatial.ckdtree'
Run Code Online (Sandbox Code Playgroud)
为什么使用分类索引时使用pd.Series.sort_index的排序似乎不起作用?如何使用字母/数字以外的其他排序顺序对多索引 pd.Series 的索引进行排序?
import pandas as pd
import numpy as np
d = {
'Card': [
'Visa', 'Visa', 'Master Card', 'Master Card', 'Visa', 'Master Card',
'Visa', 'Visa', 'Master Card', 'Visa', 'Master Card', 'Visa', 'Visa',
'Master Card', 'Master Card', 'Visa', 'Master Card', 'Visa', 'Visa',
'Master Card', 'Visa', 'Master Card', 'Master Card', 'Master Card',
'Master Card', 'Master Card', 'Master Card', 'Visa', 'Visa'
],
'Year': [
'Three', 'Three', 'Seven', 'Three', 'Three', 'Seven', 'Seven', 'Seven',
'Three', 'Seven', 'Three', 'Three', …
Run Code Online (Sandbox Code Playgroud) python ×9
windows ×2
cx-freeze ×1
debugging ×1
ipdb ×1
ipython ×1
matplotlib ×1
packaging ×1
pandas ×1
pdb ×1
pip ×1
plotly-dash ×1
powershell ×1
pyproj ×1
pysimplegui ×1
pytest ×1
python-2.7 ×1
python-3.x ×1
python-venv ×1
regression ×1
scipy ×1
seaborn ×1
spline ×1