小编dir*_*irn的帖子

如何在列表中找到最大值的所有位置?

我有一个清单:

a = [32, 37, 28, 30, 37, 25, 27, 24, 35, 55, 23, 31, 55, 21, 40, 18, 50,
             35, 41, 49, 37, 19, 40, 41, 31]
Run Code Online (Sandbox Code Playgroud)

最大元素是55(位置9和12上的两个元素)

我需要找到最大值位于哪个位置.请帮忙.

python list max

128
推荐指数
10
解决办法
27万
查看次数

如何在线程中运行 aiohttp 服务器?

这个线程中的 aiohttp 服务器示例失败并显示RuntimeError: There is no current event loop in thread 'Thread-1'.错误:

import threading
from aiohttp import web


def aiohttp_server():
    def say_hello(request):
        return web.Response(text='Hello, world')

    app = web.Application(debug=True)
    app.add_routes([web.get('/', say_hello)])
    web.run_app(app)


t = threading.Thread(target=aiohttp_server)
t.start()
Run Code Online (Sandbox Code Playgroud)

如何在线程中运行 aiohttp 服务器?

python python-asyncio aiohttp

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

处理可选字段验证

我有一个简单的问题,我不确定处理它的最佳方法。我有一个定义如下的模式:

class MySchema(Schema):
    title = fields.String(required=True)
    imageUrl = fields.Url()
Run Code Online (Sandbox Code Playgroud)

imageUrl是一个可选字段,有时它会是 None/null。如果发生这种情况,没关系,它不需要是有效的 url。但是当我这样做时:

my_schema.load(request.get_json())
Run Code Online (Sandbox Code Playgroud)

在 PUT 的传入数据上,url 字段记录错误: Field may not be null.

我认为partial=True在调用中使用 load 会起作用,但事实并非如此。我也不喜欢那样,因为这不是部分对象,而是完整对象,碰巧我的某些字段在数据库中可以为空。

我如何让棉花糖在 imageUrl 为非空时验证它,但在它为空时忽略它?

flask marshmallow

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

在Jinja2中使用getattr给出了一个错误(jinja2.exceptions.UndefinedError:'getattr'未定义)

使用常规python,我可以得到getattr(object, att)但是在Jinja2中,我得到:

jinja2.exceptions.UndefinedError
jinja2.exceptions.UndefinedError: 'getattr' is undefined
Run Code Online (Sandbox Code Playgroud)

我怎么用呢?

python attributes jinja2

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

R中函数的舍入输出

我正试图从一个简单的by()函数中舍入输出R.这就是我所拥有的:

> by(glaciers[,1:3],glaciers$activity.level,mean)

glaciers$activity.level: Active
       aspect  sun.duration      latitude 
-9.444444e+00  1.771778e+03  3.247643e+09 
-------------------------------------------
glaciers$activity.level: Inactive
      aspect sun.duration     latitude 
1.041667e+01 2.067583e+03 4.048301e+09 
-------------------------------------------
glaciers$activity.level: Relict
      aspect sun.duration     latitude 
1.766667e+01 2.168000e+03 2.759283e+09 
Run Code Online (Sandbox Code Playgroud)

如何让我的输出四舍五入到小数点后5位,仍然保留这些因子?

我试过了round(by(glaciers[,1:3],glaciers$activity.level,mean),5)但是得到了一个错误:Non-numeric argument to mathematical function.

r function

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

Nginx client_max_body_size 不起作用

这应该是一个快速解决方案。因此,出于某种原因,我仍然无法在不返回 413 Request Entity Too Large 的情况下成功获得大于 1MB 的请求。

例如,使用以下配置文件和大小为 ~2MB 的请求,我在 nginx error.log 中收到以下错误消息:

*1 client intended to send too large body: 2666685 bytes,
Run Code Online (Sandbox Code Playgroud)

我尝试设置下面设置的配置,然后重新启动我的 nginx 服务器,但我仍然收到 413 错误。有什么我做错了吗?

server {
    listen      8080;
    server_name *****/api; (*omitted*)

    client_body_in_file_only clean;
    client_body_buffer_size 32K;
    charset     utf-8;
    client_max_body_size 500M;
    sendfile on;
    send_timeout 300s;
    listen 443 ssl;
    location / {
        try_files $uri @(*omitted*);
    }
    location @parachute_server {
        include uwsgi_params;
        uwsgi_pass    unix:/var/www/(*omitted*)/(*omitted*).sock;
    }
  }
Run Code Online (Sandbox Code Playgroud)

预先感谢您的帮助!

nginx

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

如何通过 ssh 从远程计算机上的 git 存储库中拉取?

我有几台远程机器,在完成测试并准备好对生产进行更新(python Flask 应用程序和支持类)后,需要从存储库中提取。几台机器也需要从不同的分支拉取。我一直通过 SSH 连接到每台机器来运行 git pull,但这变得烦人且耗时。

我正在尝试运行 ssh 命令来完成 git pull。这是我尝试过的:

ssh dev@<remote IP> "cd /home/dev/<repo> && git pull"
Run Code Online (Sandbox Code Playgroud)

我得到了

权限被拒绝(公钥)。致命:无法从远程存储库读取。

我可以正常运行其他 git 命令,但不与远程源交互。例如:

ssh dev@<remote IP> "cd /home/dev/<repo> && git remote -v"
Run Code Online (Sandbox Code Playgroud)

当我实际 ssh 到远程计算机时。我导航到该目录并运行git pull没有问题。

我还确保将 ssh 密钥添加到 ssh-agent 中,这样密钥上的密码提示就不会成为问题。

认为这可能是一个密钥权限问题,所以我仔细检查了该密钥是否可以被我运行命令的用户读取。

令人沮丧的是,我能够 ssh 到远程计算机并运行拉取,但无法使用上述格式运行命令。

非常感谢您的帮助!

linux git ssh gitlab

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

什么是 event_loop_policy 以及为什么在 python asyncio 中需要它?

事件循环文档中提到event_loop_policy,但没有描述它是什么,为什么需要将详细介绍这个抽象层。(文档甚至说可以自定义这一层)。

另外,help(asyncio.get_event_loop_policy())只是说...

带有子进程观察器的 UNIX 事件循环策略。

然后,我就更糊涂了。什么是watcher?什么是child processesevent loop

python event-loop python-asyncio

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

Flask蓝图初始化-初始化一些全局变量

我是Flask的新手,我将要编写一个更大的应用程序。到目前为止,我已经将功能分为蓝图。现在,我希望能够在初始化期间从蓝图内设置一些全局变量(因此在请求上下文之外)。基本上,我想为某些蓝图自动初始化一个导航列表,因此每个蓝图都需要告诉我的基本应用程序其命名方式以及默认路线是什么。

我的目标是其他人可以通过将他们的自定义蓝图放入应用程序的“插件”文件夹中来扩展我的应用程序。在这种情况下,我的应用程序不知道其路由或名称。它需要在加载特定蓝图时自动学习它。

用另一种方式来解释它:我有一个主应用程序,其中包含一些实现为蓝图的子应用程序。主应用程序应包含一个引用所有子应用程序(蓝图)的导航栏。蓝图如何在主菜单导航变量中注册某些内容(例如在初始化时)?

(我没有找到从蓝图访问“ self.parent”或应用程序上下文之类的方法的方法。蓝图没有像构造函数之类的东西吗?)

python blueprint flask

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

asyncio.gather 与生成器表达式

为什么 asyncio.gather 不能与生成器表达式一起使用?

import asyncio

async def func():
    await asyncio.sleep(2)

# Works
async def call3():
    x = (func() for x in range(3))
    await asyncio.gather(*x)

# Doesn't work
async def call3():
    await asyncio.gather(func() for x in range(3))

# Works
async def call3():
    await asyncio.gather(*[func() for x in range(3)])

asyncio.run(call3())
Run Code Online (Sandbox Code Playgroud)

第二个变体给出:

[...]
  File "test.py", line 13, in <genexpr>
    await asyncio.gather(func() for x in range(3))
RuntimeError: Task got bad yield: <coroutine object func at 0x10421dc20>
Run Code Online (Sandbox Code Playgroud)

这是预期的行为吗?

python python-asyncio

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