小编Rah*_*rma的帖子

替换列表中的空格

我要替换my_string

my_string = '[[4.6, 4.3, 4.3], [8.75, 5.6, 6.6], [4.6, 4.3, 4.3]]'
Run Code Online (Sandbox Code Playgroud)

这样它就给出这样的结果

my_string = '4.6x4.3x4.3 8.75x5.6x6.6 4.6x4.3x4.3'
Run Code Online (Sandbox Code Playgroud)

我已经尝试过了,但这也用“ x”填充了空白处

mystring = mystring.replace("[","").replace("]","").replace(", ","x")
Run Code Online (Sandbox Code Playgroud)

有没有更好的pythonic方法来做到这一点?

python string formatting replace python-3.x

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

更新 Django Rest Framework 中的多对多关系

在我的 Django 应用程序中,我在Orders和之间有一个多对多关系Packages。一个订单可以有多个包裹。我想了解更新和创建方法

模型.py

class Package(models.Model):

    prod_name = models.CharField(max_length=255, default=0)
    quantity = models.IntegerField(default=0)
    unit_price = models.IntegerField(default=0)

class Orders(models.Model):

    order_id = models.CharField(max_length=255, default=0)
    package = models.ManyToManyField(Package)
    is_cod = models.BooleanField(default=False)
Run Code Online (Sandbox Code Playgroud)

序列化器.py

class PackageSerializer(serializers.ModelSerializer):
    class Meta:
        model = Package
        fields = "__all__"

class OrderSerializer(serializers.ModelSerializer):
    package = PackageSerializer(many=True)

    class Meta:
        model = Orders
        fields = "__all__"
Run Code Online (Sandbox Code Playgroud)

视图.py

class OrdersCreateAPIView(generics.CreateAPIView):
    permission_classes = (permissions.IsAuthenticated,)
    serializer_class = OrderSerializer

    def post(self, request):

        serializer = OrderSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) …
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

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

展平嵌套字典并将其转换为列

我有一个 JSON,我将其转换为字典并尝试从中制作数据框。问题是它是多重嵌套的并且数据不一致

例如

d = """[
      {
        "id": 51,
        "kits": [
            {
                "id": 57,
                "kit": "KIT1182A",
                "items": [
                    {
                        "id": 254,
                        "product": {
                            "name": "Plastic Pallet",
                            "short_code": "PP001",
                            "priceperunit": 2500,
                            "volumetric_weight": 21.34
                        },
                        "quantity": 5
                    },
                    {
                        "id": 258,
                        "product": {
                            "name": "Separator Sheet",
                            "short_code": "FSS001",
                            "priceperunit": 170,
                            "volumetric_weight": 0.9
                        },
                        "quantity": 18
                    }
                ],
                "quantity": 5
            },                                     #end of kit
            {
                "id": 58,
                "kit": "KIT1182B",
                "items": [
                    {
                        "id": 259,
                        "product": {
                            "name": "Plastic Pallet",
                            "short_code": "PP001",
                            "priceperunit": 2500, …
Run Code Online (Sandbox Code Playgroud)

python json pandas

0
推荐指数
1
解决办法
203
查看次数

根据用户的动态列表调用函数

我的 django 应用程序中有一个报告生成 API,它将报告名称作为用户的输入,用户可以从下拉列表中选择不同的报告

    reports = request.GET['reports'].split(',')
Run Code Online (Sandbox Code Playgroud)

例子:

    print("selected reports", reports)

    >>seleceted reports ['AS', 'DD', 'IS', 'LM']
Run Code Online (Sandbox Code Playgroud)

现在这reports可能会根据用户的不同而有所不同,我有一个包含创建这些报告的所有功能的字典

master = {
        'AS': Summary(df, description_dict, emp),
        'AH': lastSeenMissingAsset(df, emp, description_dict),
        'MS': missingScans(df, emp),
        'IS': individualScans(df),
        'LM': tagMismatch(df, emp),
        'MAS': missingAssets(df, emp, description_dict, deployed_df),
        'MAU': missingAudit(df, pd.to_datetime(tt).date()),
        'DD': dumpData(df)
          }                 ###this calls every report first   
Run Code Online (Sandbox Code Playgroud)

如何根据从用户那里获得的动态列表调用字典中的函数?

我试过:

    final={}
    print("selected reports", reports)
    for i in reports:
        final[i] = master[i]
    print("final", final)
Run Code Online (Sandbox Code Playgroud)

这是可行的,但由于字典的原因,所有函数都会首先调用,如何使其仅调用选定的报告?

python django

0
推荐指数
1
解决办法
190
查看次数

将response.text转换为python中的字典

我有一个 API,它在response.text 中为我提供以下数据,如何将这些数据转换为 python 字典?

响应.文本

[{"_id":"5dccedadff47e867a2833819","tel":"XXXX","loc":[28.498692,77.095215],"tripId":"5dccedaaff47e867a28337ec","mode":"automated","osm_data":{"distance_remained":10791,"time_remained":1649.5},"distance_remained":10870,"time_remained":1173,"curr_ETA":"2019-11-14T06:43:19.664Z","address":"100,
The National Media Centre, Sector 24, Gurugram, Haryana 122022,
India","city":"Gurugram","createdAt":"2019-11-14T06:01:17.166Z"},{"_id":"5dccedacff47e867a2833801","tel":"XXXX","loc":[28.498692,77.095215],"tripId":"5dccedaaff47e867a28337ec","mode":"automated","osm_data":{"distance_remained":10791,"time_remained":1649.5},"distance_remained":10870,"time_remained":1173,"curr_ETA":"2019-11-14T06:43:18.459Z","address":"100,
The National Media Centre, Sector 24, Gurugram, Haryana 122022,
India","city":"Gurugram","createdAt":"2019-11-14T06:01:16.163Z"}]
Run Code Online (Sandbox Code Playgroud)

我想以字典的形式访问此response.text中的数据

python django

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