小编Moj*_*imi的帖子

Python 的 pathlib 获取父级的相对路径

考虑以下几点Path

import pathlib
path = pathlib.Path(r'C:\users\user1\documents\importantdocuments')
Run Code Online (Sandbox Code Playgroud)

我怎样才能提取确切字符串documents\importantdocumentsPath

我知道这个例子看起来很傻,这里的真正上下文是将本地文件转换为远程下载链接。

python python-3.x pathlib python-3.7

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

如何在Javascript中获取元素及其子元素的所有计算css属性

我正在尝试使用pdfKit从html文件创建pdf文件来在python中设置服务.

所以基本上我会将我的元素作为字符串发送并期望服务器返回它的pdf版本,但为了准确表示我还需要发送元素的css文件.

我怎样才能做到这一点?仅使用元素及其所有子元素的相关样式属性和选择器生成JSON /对象.尊重层次结构,没有重复.有类似的问题,但它们已经过时,往往不考虑儿童元素.

我想也许有一种方法可以从这个元素创建一个新的DOM,然后获得根css?

javascript css wkhtmltopdf python-pdfkit

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

在Bootstrap 4中创建响应式导航栏侧边栏"抽屉"?

试图实现这样的目标:https://www.muicss.com/examples/v1/example-layouts/responsive-side-menu/index.html

我在网上看过一些使用其他版本的bootstrap的例子,但它们都过多地改变了css,这使得学习bootstrap变得更加困难.

我想知道在Bootstrap 4中是否可以使用折叠,堆叠药丸,flexbox等工具来完成这项工作?

这是我可以实现的:https://jsfiddle.net/kL9u6esw/20/

我的Jsfiddle缺少什么:

  1. 没有正确回应
  2. 导航栏未使用粘性类正确滚动
  3. 即使我设置了类,菜单按钮也不粘.
  4. 背景调光器虽然不是答案所必需的,但会很棒

在我的例子中,我无法弄清楚如何插入导航栏,不确定它是否有必要正确响应.

还不确定将它作为列是否是正确的方法,它不应该是在画布外吗?

Html代码:

<div class="container-fluid h-100">
  <div class="row h-100">
    <div class="col-5 col-md-3 collapse m-0 p-0 h-100 bg-dark" id="collapseExample">
      <ul class="nav flex-column navbar-dark sticky-top">
        <li class="nav-item">
          <a class="nav-link active" href="#">Active</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Link</a>
        </li>
        <li class="nav-item">
          <a class="nav-link" href="#">Link</a>
        </li>
        <li class="nav-item">
          <a class="nav-link disabled" href="#">Disabled</a>
        </li>
      </ul>
    </div>
    <div class="col">
      <div class="row">
        <div class="col-12">
          <button class="btn sticky-top" data-toggle="collapse" href="#collapseExample" role="button">
            Menu …
Run Code Online (Sandbox Code Playgroud)

html css twitter-bootstrap bootstrap-4

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

Django在图中的两个顶点之间找到路径

这主要是一个逻辑问题,但上下文是在Django中完成的.

在我们的数据库中,我们有Vertex和Line Classes,它们形成一个(神经)网络,但它是无序的,我无法改变它,它是一个遗留数据库

class Vertex(models.Model)
    code = models.AutoField(primary_key=True)
    lines = models.ManyToManyField('Line', through='Vertex_Line')

class Line(models.Model)
    code = models.AutoField(primary_key=True)

class Vertex_Line(models.Model)
    line = models.ForeignKey(Line, on_delete=models.CASCADE)
    vertex = models.ForeignKey(Vertex, on_delete=models.CASCADE)
Run Code Online (Sandbox Code Playgroud)

现在,在应用程序中,用户将能够直观地选择两个顶点(下面的绿色圆圈)

在此输入图像描述

然后javascript将这两个顶点的pk发送到Django,它必须找到满足它们之间路由的Line类,在这种情况下,以下4个红线:

在此输入图像描述

商业逻辑:

  • 顶点可以有1-4条与之相关的线
  • 一条线可以有1-2个与它相关的顶点
  • 两个顶点之间只有一条可能的路径

到目前为止我所拥有的:

  • 我明白答案可能包括递归
  • 必须通过尝试从一个Vertex的每个路径找到路径,直到另一个找到,它不能直接找到
  • 由于有四个和三个路口,所有正在尝试的路径必须在整个递归过程中保存(不确定这个)

我知道基本逻辑是循环遍历每个Vertex的所有行,然后得到这些行的另一个Vertex,并继续递归,但我真的不知道从哪里开始.

这是我可以得到的,但它可能没有帮助(views.py):

def findRoute(request):
    data = json.loads(request.body.decode("utf-8"))
    v1 = Vertex.objects.get(pk=data.get('v1_pk'))
    v2 = Vertex.objects.get(pk=data.get('v2_pk'))
    lines = v1.lines.all()
    routes = []
    for line in lines:
        starting_line = line
        #Trying a new route
        this_route_index = len(routes)
        routes[this_route_index] = [starting_line.pk]
        other_vertex = line.vertex__set.all().exclude(pk=v1.pk)
        #There are …
Run Code Online (Sandbox Code Playgroud)

python django recursion logic django-models

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

Python APScheduler - AsyncIOScheduler 如何工作?

我很难理解AsyncIOScheduler是如何工作的,它是如何非阻塞的?

如果我的工作正在执行阻塞功能,会AsyncIOScheduler阻塞吗?

如果我使用AsyncIOSchedulerwithThreadPoolExecutor呢?这是如何运作的?我可以等待作业执行吗?

python apscheduler

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

如何在Python中生成按时间顺序排列的uid?

这可能吗?我听说Cassandra有类似的东西:https : //datastax.github.io/python-driver/api/cassandra/util.html

我一直在使用与ISO timestamp串联uuid4,但最终太大(58个字符),可能会导致过大杀伤力。

在我的上下文中,保持序列号不起作用(DynamoDB NoSQL)

值得一提的是,对于我的应用程序而言,批量创建/相同秒创建的项目是否随机排列uid都没有关系,只要不折叠即可。

我对最大长度没有具体限制,理想情况下,我希望看到不同长度的碰撞机会不同,但是它必须小于58(我的原始尝试)

与DynamoDB(NoSQL数据库)一起用作排序键

python uuid python-3.x amazon-dynamodb

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

AWS RDS Aurora - 如何使用 PgAdmin 进行连接?

昨天 AWS 为 PostgreSQL 推出了 Aurora serverless,但它似乎没有与其他 RDS 数据库相同的配置选项,例如我无法将其设置为面向公众,它迫使我拥有一个 VPC。

现在,我不知道如何将这些 VPC 内容应用到 PgAdmin,我尝试将安全组的入站设置为所有端口和 ip,但它仍然无法连接(没有服务器响应)。

如何使用 PgAdmin 连接到 VPC 内的 RDS 数据库?打开安全组不起作用。

amazon-web-services amazon-rds pgadmin amazon-aurora

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

AWS Lambda Python - 返回 BytesIO 文件?

我正在使用 python 3.7 在 AWS Lambda 中设置一个函数,它不会让我返回字节类型

请注意,这不是 API Gateway 的问题,我是直接调用 lambda 的。

错误是:Runtime.MarshalError, ... is not JSON serializable

output = BytesIO()
#Code that puts an excel file into output...
return {
        'Content-Disposition': 'attachment; filename="export.xlsx"',
        'Content-Type': 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
        'body' : output.getvalue()
    }
Run Code Online (Sandbox Code Playgroud)

如果我做 :

'body' : str(output.getvalue())
Run Code Online (Sandbox Code Playgroud)

它输出损坏的文件,因为它添加b''到字符串

如果我做 :

'body' : base64.b64encode(output.getvalue()).decode()
Run Code Online (Sandbox Code Playgroud)

它还输出损坏的文件,可能是因为它更改了文件的二进制表示。

也许我需要上传到 S3?但它不适合我的流程,这是一次性文件创建,它会一直停留在“S3 Limbo”中,直到 TTL

amazon-web-services python-3.x aws-lambda serverless-framework

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

在循环中调用异步函数的层次结构?

有一个异步调用我正在查询服务上的数据库,但是这个服务有一个限制,它可以一次输出多少,所以我需要检查它是否通过它发送的结果达到其限制并重复查询直到没有.

同步样机:

var query_results = [];

var limit_hit = true; #While this is true means that the query hit the record limit
var start_from = 0; #Pagination parameter

while (limit_hit) {
    Server.Query(params={start_from : start_from}, callback=function(result){
        limit_hit = result.limit_hit;
        start_from = result.results.length;
        query_result.push(result.results);
    }
}
Run Code Online (Sandbox Code Playgroud)

显然上面的内容不起作用,我在这里看到了一些关于这个问题的其他问题,但他们没有提到当你需要每次迭代等待最后一次完成时你该怎么做而你之前不知道迭代次数.

我怎样才能打开上面的异步?我愿意接受使用promise/deferred-like逻辑的答案,但最好是干净利落的东西.

我大概能想到这样使用等待/超时的monstruous和可怕的方式,但必须有解决它干净,聪明的和现代的方式.

另一种方法是做一个"预查询"以了解事前的特征数量,这样你就知道循环的数量,我不确定这是否是正确的方法.

这里我们有时会使用Dojo,但是我发现的例子并没有解释当你有一个未知数量的循环时该怎么做https://www.sitepen.com/blog/2015/06/10/dojo-faq-how-can -i-序列异步的操作/

javascript ajax dojo asynchronous

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

Chrome通过自定义样式为文本输入添加了意外的填充

简而言之,这个小提琴在Firefox上运行正常,但在Chrome上却没有.

输入与选择具有相同的样式,应该是相同的高度,但它不在Chrome上,我该如何解决这个问题?

经过进一步检查,它似乎与溢出属性有关,不知道为什么

@import url(https://fonts.googleapis.com/css?family=Open+Sans);
.my-custom-forms {
    font-family: 'Open Sans',serif;
}
select.my-custom-forms, input.my-custom-forms{
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0;
    border-bottom: 2px solid lightblue;
    padding: .25rem .1rem .25rem .1rem;
    overflow: auto;
    width: 100%;
    background-color: transparent;
    transition: border .5s ease;
}
Run Code Online (Sandbox Code Playgroud)
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container m-3">
  <div class="row">
    <div class="col-3">
      <select class="my-custom-forms">
        <option>Option</option>
      </select>
    </div>
    <div class="col-3">
      <select class="my-custom-forms">
        <option>Option</option>
      </select>
    </div>
    <div class="col-6">
      <input placeholder="text" class="my-custom-forms">
    </div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我使用Bootstrap作为准系统,但不确定它是否与问题有关.

html css css3 twitter-bootstrap bootstrap-4

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