小编Num*_*uis的帖子

Python Kivy 将文件写入/读取到 SD 卡

通过使用 Python 和 Kivy,我想将文件写入用户手机的(虚拟)SD 卡,并在不同的函数中再次读取该文件。由于 Android、IOS 和 Windows Phone 可能具有不同的 SD 卡路径,因此使用“plyer”似乎是一个好主意。如何读/写一个文件到的/ SD卡

python android sd-card ios kivy

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

如何在SQLAlchemy中删除多个表

受到这个问题的启发:如何在 SQLAlchemy 中删除表?,我最终提出了一个问题:如何删除多个表。

假设我有 3 个表,如下所示,我想删除 2 个表(想象一下还有更多表,所以不需要手动删除表)。

表格

import sqlalchemy as sqla
import sqlalchemy.ext.declarative as sqld
import sqlalchemy.orm as sqlo

sqla_base = sqld.declarative_base()

class name(sqla_base):
    __tablename__ = 'name'
    id = sqla.Column(sqla.Integer, primary_key=True)
    name = sqla.Column(sqla.String)

class job(sqla_base):
    __tablename__ = 'job'
    id = sqla.Column(sqla.Integer, primary_key=True)
    group = sqla.Column(sqla.String)

class company(sqla_base):
    __tablename__ = 'company'
    id = sqla.Column(sqla.Integer, primary_key=True)
    company = sqla.Column(sqla.String)

engine = sqla.create_engine("sqlite:///test.db", echo=True)
sqla_base.metadata.bind = engine

# Tables I want to delete
to_delete = ['job', 'function']

# …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy

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

asyncio matplotlib show() 仍然冻结程序

我希望运行一个模拟,同时在一个 plot 中输出它的进度。我一直在查看很多线程和多处理的示例,但它们都非常复杂。所以我认为使用 Python 的新asyncio库应该会更容易。

我找到了一个例子(How to use 'yield' inside async function?)并为我的原因修改了它:

import matplotlib.pyplot as plt
import asyncio
import numpy as np


class DataAnalysis():
    def __init__(self):
        # asyncio so we can plot data and run simulation in parallel
        loop = asyncio.get_event_loop()
        try:
            loop.run_until_complete(self.plot_reward())
        finally:
            loop.run_until_complete(
                loop.shutdown_asyncgens())  # see: https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.AbstractEventLoop.shutdown_asyncgens
            loop.close()

    async def async_generator(self):
        for i in range(3):
            await asyncio.sleep(.4)
            yield i * i

    async def plot_reward(self):
        # Prepare the data
        x = …
Run Code Online (Sandbox Code Playgroud)

python matplotlib python-3.x python-asyncio

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

Kivy 基于窗口高度和宽度缩放文本

我想根据窗口高度缩放按钮或标签内的文本,但受窗口宽度限制。以下工作:

font_size: self.height - dp(15)
Run Code Online (Sandbox Code Playgroud)

但是文本可以超过按钮或标签的宽度,所以我想用类似的东西来限制它:

font_size: self.height - dp(15) if self.texture_size[0] < self.width else (self.width*2)/(self.height+0.1)
Run Code Online (Sandbox Code Playgroud)

不幸的是,这有问题,当 >= texture_size[0] 时它会变小,但是当文本再次变小时,它是 < self.width。所以它最终陷入循环,导致 [CRITICAL] [Clock] 错误。

为了给出更清晰的图片,红色条中的文字应尽可能大,但不要超过按钮宽度: Kivy_text-scaling

python kivy

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

Unity 3D - 使用脚本移动人形头部肌肉

目标

我想使用脚本旋转给定 x、y、z 旋转值的人形角色的头部(不使用场景中的任何其他对象作为“看”方向)。

我想做的事

设置类人角色的绑定(humanoid prefab --> Rig --> Animation Type: Humanoid --> Configure --> Muscles & Settings),你会看到如下界面:https://docs.unity3d。 com/Manual/MuscleDefinitions.html

在此菜单中,在“头部”下,您可以拖动滑块来上下移动您的人形头部。我想用脚本实现同样的效果,但我不知道如何做到这一点。

资源

这个问题从来没有用示例代码得到正确的答案:https : //answers.unity.com/questions/824628/can-we-using-script-to-moving-the-muscles-in-unity.html

我想我必须对HumanPose.muscles( https://docs.unity3d.com/ScriptReference/HumanPose-muscles.html )做一些事情,但是由于缺少代码示例,我不知道如何解决这个问题。

编辑 3:此链接有一个 HumanPose 的代码示例,但我还没有让它工作:https ://forum.unity.com/threads/humanposehandler.430354/

如何通过脚本给定值来获取人形角色的头部肌肉并旋转它们?(或任何其他方式如何使用头部旋转值旋转头部,而场景中没有其他对象)。任何帮助,将不胜感激。

编辑 1 & 2:示例代码

我收到一条 JSON 格式的消息,从中提取弧度值并将其更改为度数:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Newtonsoft.Json.Linq;  // JSON reader; https://assetstore.unity.com/packages/tools/input-management/json-net-for-unity-11347

public class HeadRotator : MonoBehaviour {

    Quaternion rotation = Quaternion.identity;

    // Radians to degree
    float Rad2Degree = 180 / …
Run Code Online (Sandbox Code Playgroud)

unity-game-engine

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

Helm stable/airflow - 使用 Helm 图表失败时使用共享持久卷进行 Airflow 部署的自定义值

客观的

我想在 Kubernetes 上部署 Airflow,其中 Pod 可以访问共享持久卷中的相同 DAG。根据文档(https://github.com/helm/charts/tree/master/stable/airflow#using-one-volume-for-both-logs-and-dags),看来我必须设置并通过Helm 的这些值:extraVolume, extraVolumeMount, persistence.enabled, logsPersistence.enabled, dags.path, logs.path

问题

我在安装官方 Helm 图表时传递的任何自定义值都会导致类似于以下内容的错误:

Error: YAML parse error on airflow/templates/deployments-web.yaml: error converting YAML to JSON: yaml: line 69: could not find expected ':'
Run Code Online (Sandbox Code Playgroud)
  • 工作正常:microk8s.helm install --namespace "airflow" --name "airflow" stable/airflow
  • 不工作
microk8s.helm install --namespace "airflow" --name "airflow" stable/airflow \
--set airflow.extraVolumes=/home/*user*/github/airflowDAGs \
--set airflow.extraVolumeMounts=/home/*user*/github/airflowDAGs \
--set dags.path=/home/*user*/github/airflowDAGs/dags \
--set logs.path=/home/*user*/github/airflowDAGs/logs \
--set persistence.enabled=false \
--set …
Run Code Online (Sandbox Code Playgroud)

kubernetes airflow kubernetes-helm microk8s

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

kivy访问孩子id

我想访问孩子的 id 来决定是否删除该小部件。我有以下代码:

主要.py

#!/usr/bin/kivy
# -*- coding: utf-8 -*-

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout


class Terminator(BoxLayout):
    def DelButton(self):
        print("Deleting...")

        for child in self.children:
            print(child)
            print(child.text)

            if not child.id == 'deleto':
                print(child.id)
                #self.remove_widget(child)
            else:
                print('No delete')


class TestApp(App):
    def build(self):
        pass


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

测试.kv

#:kivy 1.9.0

<Terminator>:
    id: masta
    orientation: 'vertical'

    Button:
        id: deleto
        text: "Delete"
        on_release: masta.DelButton()

    Button
    Button

Terminator
Run Code Online (Sandbox Code Playgroud)

但是,当使用:打印 id 时print(child.id),它总是返回:None。即使print(child.text)正确返回Delete .

问题 …

python kivy

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

Tensorflow图像读空

这个问题基于:Tensorflow图像读取和显示

遵循他们的代码,我们有以下内容:

string = ['/home/user/test.jpg']
filepath_queue = tf.train.string_input_producer(string)
self.reader = tf.WholeFileReader()
key, value = self.reader.read(filepath_queue)

print(value)
# Output: Tensor("ReaderRead:1", shape=TensorShape([]), dtype=string)

my_img = tf.image.decode_jpeg(value, channels=3)
print(my_img)
# Output: Tensor("DecodeJpeg:0", shape=TensorShape([Dimension(None), Dimension(None), Dimension(3)]), dtype=uint8)
Run Code Online (Sandbox Code Playgroud)

为什么my_img没有尺寸?(Dimension(3)仅仅是因为参数channels=3)

这是否意味着图像没有正确加载?(img = misc.imread('/home/user/test.jpg')确实加载该图像).

tensorflow

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

sqlite3 python ATTACH DATABASE复制表.schema

系统

  • Python 2.7
  • SQLite3

我想通过将表从_bak.db复制到正在使用的.db中来恢复数据库的备份。

conn = sqlite3.connect(os.path.join("data", "db", "Kanji-story.db"))
c = conn.cursor()
c.execute("DROP TABLE IF EXISTS current")

c.execute("ATTACH DATABASE ? AS db2", (os.path.join('data', 'db', 'Kanji-story_bak.db'),))

# TODO Code for Creating table with the same structure
c.execute("INSERT INTO main.current SELECT * FROM db2.current")
Run Code Online (Sandbox Code Playgroud)

要执行最后一条语句,我首先必须在Kanji-story.db中创建一个表,其结构与Kanji-story_bak.db相同(请参阅#TODO)。如何创建具有相同结构?我知道SQLite3中有.schema命令,但是如何有效地使用该命令创建新表呢?

python database sqlite

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

Seaborn Confusion Matrix (heatmap) 2 配色方案(正确的对角线 vs 错误的休息)

背景

在混淆矩阵中,对角线表示预测标签与正确标签匹配的情况。所以对角线是好的,而所有其他单元都是坏的。为了向非专家阐明 CM 中什么是好的和什么是坏的,我想给对角线赋予与其他颜色不同的颜色。我想用Python 和 Seaborn来实现这一点。

基本上我试图实现这个问题在 R 中的作用(ggplot2 Heatmap 2 Different Color Schemes - Confusion Matrix: Matches in Different Color Scheme than Missclassifications

带有热图的普通 Seaborn 混淆矩阵

import numpy as np
import seaborn as sns

cf_matrix = np.array([[50, 2, 38],
                      [7, 43, 32],
                      [9,  4, 76]])

sns.heatmap(cf_matrix, annot=True, cmap='Blues')  # cmap='OrRd'
Run Code Online (Sandbox Code Playgroud)

这导致此图像:

Seaborn 混淆矩阵与颜色图“蓝调”

目标

我想用例如着色非对角线单元格cmap='OrRd'。所以我想会有 2 个颜色条,1 个蓝色用于对角线,1 个用于其他单元格。优选地,两个颜色条的值匹配(因此两者都是例如 0-70 而不是 0-70 和 0-40)。我将如何处理这个问题?

以下不是用代码制作的,而是用照片编辑软件制作的:

所需的混淆矩阵配色方案

python matplotlib heatmap confusion-matrix seaborn

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