小编Mik*_*Sam的帖子

如何在 VSCode 中使用 yapf(或 black)

我使用以下方法安装了 yapf:

conda install yapf
Run Code Online (Sandbox Code Playgroud)

并在我的.vscode/settings.json文件中添加下一行:

{
    //"python.linting.pylintEnabled": true,
    //"python.linting.pycodestyleEnabled": false,
    //"python.linting.flake8Enabled": true,
    "python.formatting.provider": "yapf",
    "python.formatting.yapfArgs": [
        " — style",
        "{based_on_style: pep8, indent_width: 4}"
    ],
    "python.linting.enabled": true,
}
Run Code Online (Sandbox Code Playgroud)

但我不明白如何使用它 - 它在格式错误的脚本中没有显示任何错误:

import pandas as pd

class MyClass(object):
    def __init__(self, some_value: int):
        self.value = some_value
    def one_more_function(self, another_value):
        print(another_value)
myObject = MyClass(45)
myObject.one_more_function(2)
my__object2 = MyClass(324)

    print('ok')
def some_foo():
    """
    """
    pass
Run Code Online (Sandbox Code Playgroud)

python intellisense pylint visual-studio-code yapf

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

如何在安装了pip的Anaconda中卸载软件包

问题:

我安装了Anaconda:

conda -V
conda 4.4.7
Run Code Online (Sandbox Code Playgroud)

我还为它安装了很多软件包python3 setup.py install.我用它来创建一些从setup.py文件创建的包.

现在我想卸载一个包.

我尝试了什么:

pip uninstall packageName
pip3 uninstall packageName
conda uninstall packageName
Run Code Online (Sandbox Code Playgroud)

它适用于python:check pip list并且pip3 list没有这样的包.

错误:

但是对于conda,我得到了这个:

conda uninstall packageName
Solving environment: failed

PackagesNotFoundError: The following packages are missing from the target environment:
  - packageName
Run Code Online (Sandbox Code Playgroud)

让我们检查:

conda list
packageName
Run Code Online (Sandbox Code Playgroud)

PS我在这种情况下发现信息conda uninstall并且conda remove不起作用.但那该怎么办?

PSS其实我改变了真正的包名,packageName但如果这个信息很重要,我会添加它.


我的信息:

conda info

     active environment : None
       user config file : /home/masamok4/.condarc
 populated config files …
Run Code Online (Sandbox Code Playgroud)

python pip anaconda

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

如何恢复wget镜像网站?

我使用wget下载整个网站。
我使用了以下命令(在Windows 7中):

wget ^
 --recursive ^
 -A "*thread*, *label*" ^
 --no-clobber ^
 --page-requisites ^
 --html-extension ^
 --domains example.com ^
 --random-wait ^
 --no-parent ^
 --background ^
 --header="Accept: text/html" --user-agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:21.0) Gecko/20100101 Firefox/21.0" ^
     http://example.com/
Run Code Online (Sandbox Code Playgroud)

2天后,我的小弟弟重新启动了PC,
因此我尝试恢复已停止的进程
,并在命令中添加了以下内容

--continue ^
Run Code Online (Sandbox Code Playgroud)

所以代码看起来像

wget ^
     --recursive ^
     -A "*thread*, *label*" ^
     --no-clobber ^
     --page-requisites ^
     --html-extension ^
     --domains example.com ^
     --random-wait ^
     --no-parent ^
     --background ^
     --continue ^
     --header="Accept: text/html" --user-agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; …
Run Code Online (Sandbox Code Playgroud)

cmd wget web-crawler web-scraping

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

使用列表推导替换字符串

是否可以使用列表推导完成此示例:

a = ['test', 'smth']
b = ['test Lorem ipsum dolor sit amet',
     'consectetur adipiscing elit',
     'test Nulla lectus ligula',
     'imperdiet at porttitor quis',
     'smth commodo eget tortor', 
     'Orci varius natoque penatibus et magnis dis parturient montes']


for s in a:
    b = [el.replace(s,'') for el in b]
Run Code Online (Sandbox Code Playgroud)

我要从句子列表中删除特定的单词。我可以使用循环来实现,但是我想可以使用一些单行解决方案来实现。

我尝试了类似的东西:

b = [[el.replace(s,'') for el in b] for s in a ]
Run Code Online (Sandbox Code Playgroud)

但这是错误的


我得到了很多优质的答案,但是现在我有了更多的麻烦:如果我想使用单词组合怎么办?

a = ['test', 'smth commodo']
Run Code Online (Sandbox Code Playgroud)

谢谢您的回答!我对所有解决方案进行了速度测试,结果如下:我这样做意味着要进行100次计算(除了最后一次计算,等待时间太长了)。

                      b=10 a=2   |  b=9000 a=2 | b=9000 a=100 | b=45k …
Run Code Online (Sandbox Code Playgroud)

python string list-comprehension list

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

LightGBM 忽略关于“boost_from_average”的警告

我使用 LightGBM 模型(版本 2.2.1)。它在火车上显示下一个警告:

[LightGBM] [警告] 从 2.1.2 版本开始,“binary”目标中“boost_from_average”参数的默认值为true。与以前版本的 LightGBM 相比,这可能会导致明显不同的结果。如果您的旧模型产生不好的结果,请尝试设置 boost_from_average=false

我找到了它的内容:github link

但是我不使用任何旧模型或遗留代码(它是在 LightGBM 2.2.1 版本上创建的新项目),所以我不需要每次都看到这个警告。

我也知道我可以更改verbose和关闭所有警告。但这并不是很好 - 另一个可能有用!

所以我的问题是:是否可以仅关闭(隐藏)此警告?

python warnings boosting data-science lightgbm

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

使用 Rich 设置不同的背景颜色

我发现有用的包很丰富。并想以下一种方式使用它:在句子中和不同的背景颜色下绘制不同颜色的单词。我使用下一个代码:

from rich.console import Console
console = Console()
console.print('[green]some[/green] [#F47983]text[/#F47983]')
Run Code Online (Sandbox Code Playgroud)

这样我就可以为任何单词设置任何颜色:

在此输入图像描述

但我不知道如何设置不同的背景颜色。我尝试过background=bg:但是backgrounp-color-这不起作用:(

python printing python-3.x rich

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

使用Octave中的matlab代码 - 贝叶斯网络工具箱

我试图在Octave中运行Kevin Murphy的Bayes Net Toolbox并遇到一些问题.我对贝叶斯网络,Matlab和Octave的新手没有帮助.

这个工具箱最初是为Matlab编写的.有一个大型测试文件test_BNT.m,它通过工具箱中的所有功能运行.大部分的错误消息与之间的差异&,并&&在Matlab和倍频.这很容易解决.但是,我现在遇到了一个新问题,我不知道该怎么做.

例如,qmr1.m脚本创建pearl_inf_engine类的实例,设置一些成员成员变量并将类的实例传递给另一个函数.稍后,将在另一个脚本(parallel_protocol.m)中再次访问成员变量.但是当发生这种情况时,会出现以下消息:

error: invalid index for class
error: evaluating argument list element number 1
Run Code Online (Sandbox Code Playgroud)

似乎从一个脚本到另一个脚本,它忘记了该类有任何成员变量,并在您尝试访问它们时给出无效的索引消息.

这是一个容易解决的常见错误吗?路径或工作目录有问题吗?也许其他人已经将BNT转换为八度,知道该怎么做?

编辑

我能够通过此错误消息.诀窍是阅读安装说明(哈哈)并运行addpath(genpathKPM(<BNT base directory)).genpathKPM.m是BNT中包含的脚本,它将所有必需的目录添加到路径中.

这样做了以后,运行test_BNT.m和变化&,以&&|||每个地方,它提供了警戒线.这将清除大部分错误.

但是,我仍然无法运行mpe1.m,mp2.m,mildew1.m和其他一些人.我坚持的新错误消息是:

error: invalid empty index list
error: called from:
error:   C:\FullBNT-1.0.7\bnt\BNT\inference\static\@var_elim_inf_engine\find_mpe
.m at line 63, column 5
Run Code Online (Sandbox Code Playgroud)

在这行代码上:

eval(['sCPT.T(', sargs, num2str(jj), ')=0;']);
Run Code Online (Sandbox Code Playgroud)

如果我可以让所有脚本都能运行,我会在这里发布一个答案,并按照我的步骤进行操作. …

matlab octave

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

使用不带src属性的vuejs在iframe中渲染Component

<iframe id="frame" width="100%" height="100%">

</ifrme>
Run Code Online (Sandbox Code Playgroud)

我想在这个iframe中渲染组件.有没有在iframe中创建html元素或渲染组件的选项?

new Vue({
   el:'#frame',
   store:store,
   router:router,
   render: component
})
Run Code Online (Sandbox Code Playgroud)

html iframe vue.js

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

在 IIS 10 (Windows 10) 中无法看到“管理服务”

我在服务器 A 上安装了 Windows 10(专业版)和 IIS 10。我试图将 Web API 从机器 B 上的 Visual Studio 2015 发布到服务器 A,但出现以下错误。

Web 部署任务失败。(无法连接到远程计算机(“172.26.50.17”)。在远程计算机上,确保已安装 Web Deploy 并启动了所需的进程(“Web 管理服务”)。

我通过谷歌搜索了解到 Web 服务器需要安装并运行管理服务。我已经安装了 Web 平台,我可以看到安装了“没有捆绑 SQL 支持(最新)的 Web depoy 3.6”组件。

但是我在 IIS 的“管理”部分下仍然没有看到管理服务图标。任何人都可以帮助我理解这一点吗?

iis

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

Python棉花糖:字典验证错误

我对棉花糖很陌生,但我的问题是指处理类似 dict 的对象的问题。Marshmallow 文档中没有可行的示例。我在堆栈溢出原始问题中遇到了一个简单的例子,这是答案的原始代码,假设这应该很简单

from marshmallow import Schema, fields, post_load, pprint

class UserSchema(Schema):
    name = fields.String()
    email = fields.Email()
    friends = fields.List(fields.String())

class AddressBookSchema(Schema):
    contacts =fields.Dict(keys=fields.String(),values=fields.Nested(UserSchema))

@post_load
def trans_friends(self, item):
    for name in item['contacts']:
        item['contacts'][name]['friends'] = [item['contacts'][n] for n in item['contacts'][name]['friends']]


data = """
   {"contacts": { 
        "Steve": {
            "name": "Steve",
            "email": "steve@example.com",
            "friends": ["Mike"]
        },
        "Mike": {
            "name": "Mike",
            "email": "mike@example.com",
            "friends": []
        }
   }
}
"""

deserialized_data = AddressBookSchema().loads(data)
pprint(deserialized_data)
Run Code Online (Sandbox Code Playgroud)

但是,当我运行代码时,我得到以下 NoneType 值

`None`
Run Code Online (Sandbox Code Playgroud)

输入尚未编组。

我正在使用棉花糖 3.0.0b20 …

python orm validationerror marshmallow

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