小编ajr*_*ite的帖子

什么是在Python中拥有多个构造函数的干净,pythonic方式?

我无法找到明确的答案.AFAIK,你不能__init__在Python类中拥有多个函数.那么我该如何解决这个问题呢?

假设我有一个Cheese使用该number_of_holes属性调用的类.我怎样才能有两种创建奶酪对象的方法......

  1. 一个像这样的洞: parmesan = Cheese(num_holes = 15)
  2. 并且不带参数并且只是随机化number_of_holes属性:gouda = Cheese()

我只想到一种方法来做到这一点,但这似乎有点笨重:

class Cheese():
    def __init__(self, num_holes = 0):
        if (num_holes == 0):
            # randomize number_of_holes
        else:
            number_of_holes = num_holes
Run Code Online (Sandbox Code Playgroud)

你说什么?还有另外一种方法吗?

python constructor

660
推荐指数
9
解决办法
26万
查看次数

通过聚合在pandas组中包含缺少的值组合

问题

通过聚合在pandas group的输出中包括所有可能的值或值组合.

例如大熊猫据帧有三列,User,Code,和Subtotal:

import pandas as pd
example_df = pd.DataFrame([['a', 1, 1], ['a', 2, 1], ['b', 1, 1], ['b', 2, 1], ['c', 1, 1], ['c', 1, 1]], columns=['User', 'Code', 'Subtotal'])
Run Code Online (Sandbox Code Playgroud)

我想小组User,并Code与获得的每个组合的小计UserCode.

print(example_df.groupby(['User', 'Code']).Subtotal.sum().reset_index())
Run Code Online (Sandbox Code Playgroud)

我得到的输出是:

  User   Code   Subtotal
0    a      1          1
1    a      2          1
2    b      1          1
3    b      2          1
4    c      1          2
Run Code Online (Sandbox Code Playgroud)

我怎样才能包括缺少的组合User=='c',并Code==2在表中,即使它不存在example_df? …

python pandas

4
推荐指数
1
解决办法
1261
查看次数

如何让Gunskcorn运行Flask应用

我是Flask / Python的新手,这个问题可能很愚蠢,或者我可能缺少明显的东西,所以请耐心等待。

我创建了一个Flask应用,其结构如下:

myproject
  api
    __init__.py
    api.py
    application.py
    config.py
    models.py
  migrations
    ...
  appserver.py
  manage.py
  Procfile
  requirements.txt
Run Code Online (Sandbox Code Playgroud)

我的内容appserver.py

from api.application import create_app

if __name__ == '__main__':
  create_app = create_app()
  create_app.run()
Run Code Online (Sandbox Code Playgroud)

我的内容api/application.py

from flask import Flask


def create_app(app_name='MYAPPNAME'):
  app = Flask(app_name)
  app.config.from_object('api.config.DevelopmentConfig')

  from api.api import api
  app.register_blueprint(api, url_prefix='/api')

  from api.models import db
  db.init_app(app)

  return app
Run Code Online (Sandbox Code Playgroud)

当我在本地运行服务器时,python appserver.py一切正常。当我尝试像这样运行gunicorn时:出现gunicorn --bind 127.0.0.1:5000 appserver:create_app此错误:TypeError: create_app() takes from 0 to 1 positional arguments but 2 were given …

flask python-3.x

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

标签 统计

python ×2

constructor ×1

flask ×1

pandas ×1

python-3.x ×1