admin


最近的问题
最近的答案
  • 查询间接相关的模型实例

    7小时前

    你可以.filter(…) [Django-doc]使用:

     Review.objects.filter( cart__job__complete=True )

    可以使用双下划线 ( __ ) 来“贯穿”关系。

    因此,这将检索Cart Review s,相关的Job存在且具有complete=True

  • 嵌套列表 - 更改嵌套列表的结构(嵌套减少)

    11小时前

    使用来自itertools from_iterables

     import itertools flat_list = list(itertools.chain.from_iterable(training_data))

  • 如何创建带有动画的垂直渐变条?

    15小时前

     div { height: 400px; width: 20px; background: linear-gradient(0deg, #ffee00, #ff0000, #ff00ff); background-size: 200% 200%; -webkit-animation: AnimationName 5s ease infinite; -moz-animation: AnimationName 5s ease infinite; animation: AnimationName 5s ease infinite; } @keyframes AnimationName { 0%{background-position:50% 0%} 50%{background-position:50% 100%} 100%{background-position:50% 00%} }
     <div></div>

  • 如何从 Django 的表单中显示模型的所有字段值?

    1天前

    您正在交换instance= s。您提供了usario_form user对象,而user_formusario对象。你需要做相反的事情:

     def modificar_cadastro(request): if request.method == 'POST': # … else: # not request.user ↓ usuario_form = UsuarioForm( instance=request.user.usuario ) # not request.user.usario ↓ user_form = UserForm( instance=request.user ) # …

  • 如何在python中对嵌套的json进行数据框化? json 是递归的,具有相同的键名,需要将其作为同一列进行数据框化

    1天前

    尝试:

     dct = { "employee": [ { "company": "xxx", "address": "yyy", "person": [ { "name": "myname", "qualifications": "graduate", "person": [ { "name": "myname2", "qualifications": "graduate2", "person": [ { "name": "myname3", "qualifications": "graduate3", } ], } ], } ], } ] } def get_employees(d, company=None, address=None): if isinstance(d, dict): company = d.get("company", company) address = d.get("address", address) if "name" in d: yield company, address, d["name"], d.get("qualifications") yield from get_employees(d.get("person"), company, address) elif isinstance(d, list): for v in d: yield from get_employees(v, company, address) df = pd.DataFrame( get_employees(dct["employee"]), columns=["company", "address", "name", "qualifications"], ) print(df)

    印刷:

     company address name qualifications 0 xxx yyy myname graduate 1 xxx yyy myname2 graduate2 2 xxx yyy myname3 graduate3

  • 用 Python 修改 .bash_aliases

    1天前

    我找不到确定哪个用户运行脚本来修改他们的文件的方法。

    您可以~/.bash_aliases并在没有 sudo 的情况下运行它,除非您当前的用户是 root。

    编辑:您只需为.bash_aliases所属的每个用户添加写入权限。

  • 如何通过在 python 中输入来使用 lambda?

    1天前

    我想你可以这样做......但你可能不应该(见PEP8

     # def d_a(): < you dont need(or want) this line ... d_a_compute = lambda v_i, t, a: (v_i * t) + (0.5 * a) * (t ** 2) ... if choice == "d_a": result = d_a_compute( # <- you need to actually call you lambda float(input("Enter the initial velocity: ")), # v_i float(input("Enter the time: ")), # t float(input("Enter the acceleration: ")) # a ) print("DA = ", result)

    正如评论中所指出的,在此处仅使用普通函数几乎肯定更具可读性(实际上,在PEP8中明确指出您应该使用普通函数定义而不是将 lambda 分配给变量)

     def d_a_compute(v_i, t, a): return (v_i * t) + (0.5 * a) * (t ** 2)

    反而

  • 将结构头与 vec&lt;char&gt; 相互转换

    1天前

    每次迭代时,您都会step增加当前数据包的大小。它是下一个数据包开始位置的stream但是,您bitr ,导致未定义行为,因为bitr已增加超过缓冲区的末尾。

    你得到的是:

     start of 1st loop: bitr = 0 start of 2nd loop: bitr = 51 (size of first packet) start of 3rd loop: bitr = 139 (51 + 51 + 37, 2 * size of first packet + size of second packet)

    您想要做的是将bitr增加与增加step相同的数量( bitr+=header.len + sizeof(header_t); ),或者将 set bitr设置为新计算的索引( bitr = &stream[step]; )。

  • 雪花 Java UDF 无法返回浮点数组?

    2天前

    检查文档以了解允许的类型: float可以,但不支持 `Float。

    因此,这是固定的代码:

     create or replace function float_array_test() returns array language java handler='MyClass.test' as $$ class MyClass { public static float[] test() { return new float[] {(float)1.1, (float)2.2}; } } $$;

    但要注意incompatible types: double cannot be converted to Float ,这就是为什么我必须将硬编码的 double 转换为 float 。

    一个更好的解决方案是在 Java 区域中使用双精度数,它将在雪花区域中转换为浮点数而不会丢失精度:

     create or replace function float_array_test() returns array language java handler='MyClass.test' as $$ class MyClass { public static double[] test() { return new double[] {1.1, 2.2}; } } $$;

  • Python 使用嵌套列表推导式创建加速增长

    2天前

    这应该与您的 for 循环的行为方式相同。

     numbers = [x * (i+1) for x, i in zip(range(50), range(50))]

    或者

    numbers = [x * i for x, i in zip(range(50), range(1, 51))]