我有两个字典项目和u_items
items = {"A": 1, "B": 2, "C": 3}
u_items = {"D": 4, "B": 4, "E": 8, "C": 4}
Run Code Online (Sandbox Code Playgroud)
我想用u_items更新项目字典,所以我这样做了
items.update((k + '_1' if k in items else k, v) for k, v in u_items.items())
Run Code Online (Sandbox Code Playgroud)
这样我就可以区分两个字典的键
输出:
items = {'A': 1, 'B': 2, 'C': 3, 'D': 4, 'B_1': 4, 'E': 8, 'C_1': 4}
Run Code Online (Sandbox Code Playgroud)
但是当我用另一个字典更新项目字典时,假设n_items,它将替换B_1的值而不是使其变为B_1_1
n_items = {"C":7, "B":9}
items.update((k + '_1' if k in items else k, v) for k, v in n_items.items())
Run Code Online (Sandbox Code Playgroud)
输出:
{'A': 1, 'B': …Run Code Online (Sandbox Code Playgroud) 我有一个模型:
模型.py
class DispatchPlan(models.Model):
total_trucks = models.IntegerField(default=0)
material_type = models.CharField(max_length=255, default=0, choices=mtypes)
scheduled_date = models.DateTimeField(max_length=255, default=0)
offered_price = models.IntegerField(default=0)
weight = models.IntegerField(default=0)
Run Code Online (Sandbox Code Playgroud)
我正在尝试绘制预定日期和体重之间的图表。我想按小时和相应的重量对时间戳进行分组。我怎样才能做到这一点?
在 SQl 中它就像.groupby('scheduled_date)但因为它是一个时间戳,我不认为它是相同的
应该是这样的:
data = DispatchPlan.objects.all().groupby('scheduled_date')
Run Code Online (Sandbox Code Playgroud)
我使用 postgres 作为我的数据库。
编辑:我尝试过的
dataset = DispatchPlan.objects.annotate(month=TruncMonth('scheduled_date')).values('month').annotate(c=sum('weight')).values('month', 'c')
Run Code Online (Sandbox Code Playgroud)
错误:
类型错误:+ 不支持的操作数类型:“int”和“str”
我想通过 URL 中的“pk”从 ORM 检索对象。这就是我正在尝试的
这是我的网址:
path('api/dispatchhistoryitem/<int:pk>/', views.dispatchhistoryitemsview.as_view(), 'dispatchhistoryitem'),
Run Code Online (Sandbox Code Playgroud)
视图.py
class dispatchhistoryitemsview(ListAPIView):
queryset = ItemBatch.objects.all()
serializer_class = holdSerializer
def get(self, request, pk, *args, **kwargs):
items = get_object_or_404(ItemBatch, id=self.kwargs.get('pk'))
serializer = holdSerializer(items)
return Response(serializer.data)
Run Code Online (Sandbox Code Playgroud)
序列化器.py
class holdSerializer(serializers.ModelSerializer):
class Meta:
model = ItemBatch
fields = "__all__"
Run Code Online (Sandbox Code Playgroud)
但是当我运行它时它说:
/api/dispatchhistoryitem/43/处的值错误
字典更新序列元素#0的长度为1;需要 2 个
我在这里做错了什么?请帮忙!
在 React 项目中,我尝试运行“yarn install”,但它抛出以下错误:
\n\n\ngyp 动词
\nwhich失败错误:未找到:python2
完整错误回溯:
\nyarn install v1.22.4\nwarning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.\n[1/4] Resolving packages...\n[2/4] Fetching packages...\ninfo fsevents@2.1.2: The platform "win32" is incompatible with this module.\ninfo "fsevents@2.1.2" is an optional dependency and failed compatibility check. Excluding it from …Run Code Online (Sandbox Code Playgroud) 我在我的 django 项目中创建了一个新的应用程序“grn”,并尝试从同一个项目中名为“packsapp”的另一个应用程序导入模型,如下所示:
模型.py
from ..packsapp.models import *
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
ValueError:尝试在顶级包之外进行相对导入
这是应用程序的结构:
yantra_packs
grn
--migrations
__init__.py
admin.py
apps.py
models.py
tests.py
views.py
media
packsapp
--migrations
templates
templatetags
views1
__init__.py
apps.py
decorators.py
forms.py
models.py
urls.py
views.py
Run Code Online (Sandbox Code Playgroud)
如何导入的模型packsapp中grn?
在我的 Django 应用程序中,我得到这样的 Json:
"sales_order": 102,
"transport_by": 4,
Run Code Online (Sandbox Code Playgroud)
我想扩展sales_order并将其替换为其所有者的first_name+ last_name。所以我尝试使用 slug 相关字段,但我不确定如何从中获取两个值。
这是我尝试过的:
class AtableSOSerializer(serializers.ModelSerializer):
owner = serializers.SlugRelatedField(read_only=True, slug_field='first_name'+' '+'last_name')
class Meta:
model = MaterialRequest
fields = "__all__"
class AtableFlowListSerializer(serializers.ModelSerializer):
class Meta:
model = AllotmentFlow
fields = "__all__"
class AllotmentTableSerializer(serializers.ModelSerializer):
flows = AtableFlowListSerializer(many=True)
sales_order = AtableSOSerializer(read_only=True)
class Meta:
model = Allotment
fields = "__all__"
Run Code Online (Sandbox Code Playgroud)
但出现了明显的错误:
AttributeError:“用户”对象没有属性“名字姓氏”
如何获取 JSON 中的名字 + 姓氏?
我有两个如下所示的数据框:
df1:
foo
0 2
1 11
2 18
3 6
4 14
5 12
6 8
7 13
8 7
9 5
Run Code Online (Sandbox Code Playgroud)
df2:
bar date
0 2 06-01-2020
1 5 06-01-2020
2 7 06-01-2020
3 8 06-01-2020
4 3 06-01-2020
Run Code Online (Sandbox Code Playgroud)
foo我想搜索in的值bar,如果有匹配项,则在 in 的另一列中更新它df1
预期输出:
foo result date
0 2 True 06-01-2020
1 11 False 24-08-2020
2 18 False 24-08-2020
3 6 False 24-08-2020
4 14 False 24-08-2020
5 12 False 24-08-2020
6 8 True 06-01-2020 …Run Code Online (Sandbox Code Playgroud) 我有一个list的list就像如下:
a = [['Product', 'Q', 'QA', 'Status'],
['PS001', 500, 200, 'Good'], ['PS002', 400, 100, 'Bad']]
Run Code Online (Sandbox Code Playgroud)
我想创建一个如下所示list的dicts:
new_list = [{'Product':'PS001', 'Q':500, 'QA':200, 'Status':'Good'},
{'Product':'PS002', 'Q':400, 'QA':100, 'Status':'Bad'}]
Run Code Online (Sandbox Code Playgroud)
我用空值temp_dict的键创建了一个dict:
temp_dict = {}
for i in range(len_0):
temp_dict[a[0][i]] = ''
Run Code Online (Sandbox Code Playgroud)
如何附加a[1:]in的值dict并将它们进一步附加到 a list?
我试过这个:
new_list = []
for i in a[1:]:
for j in i:
for m,n in temp_dict.items():
temp_dict[m]=j
new_list.append(temp_dict)
Run Code Online (Sandbox Code Playgroud)
但结果如下:
[{'Product': 'Bad', 'Q': 'Bad', …Run Code Online (Sandbox Code Playgroud) 我尝试在 AWS Amplify 上部署 React 应用程序,但收到以下错误:
Creating an optimized production build...
2023-01-05T07:21:24.092Z [WARNING]: <--- Last few GCs --->
[3710:0x48877c0] 225822 ms: Scavenge 1576.7 (1958.9) -> 1544.8 (1928.0) MB, 5.2 / 0.0 ms (average mu = 0.652, current mu = 0.467) allocation failure
[3710:0x48877c0] 226651 ms: Mark-sweep 1681.0 (2063.6) -> 1665.9 (1998.4) MB, 734.4 / 0.0 ms (average mu = 0.538, current mu = 0.316) allocation failure scavenge might not succeed
[3710:0x48877c0] 226745 ms: Scavenge 1683.9 (2004.2) -> 1668.2 (2000.4) MB, …Run Code Online (Sandbox Code Playgroud) 我正在尝试制作一个 django 应用程序,我想在其中创建一个 opt 验证,但我很困惑什么是正确的方法。这是我到目前为止所做的:
模型.py
class User(AbstractUser):
is_shipper = models.BooleanField(default=False)
is_ftlsupp = models.BooleanField(default=False)
is_ptlsupp = models.BooleanField(default=False)
otp = models.IntegerField(default=1620122)
verified = models.BooleanField(default=False)
Run Code Online (Sandbox Code Playgroud)
序列化器.py
class UserSerializer(serializers.ModelSerializer):
password = serializers.CharField(write_only=True)
class Meta:
model = User
fields = "__all__"
read_only_fields = ('id', 'verified')
def create(self, validated_data):
user = super(UserSerializer, self).create(validated_data)
user.set_password(validated_data['password'])
def random_with_N_digits(n):
range_start = 10**(n-1)
range_end = (10**n)-1
return randint(range_start, range_end)
otp = random_with_N_digits(6)
user.otp = otp
user.save()
subject = 'Please Confirm Your Account'
message = 'Your 6 Digit Verification Pin: …Run Code Online (Sandbox Code Playgroud) django ×5
python ×5
dictionary ×2
reactjs ×2
aws-amplify ×1
list ×1
node-sass ×1
node.js ×1
orm ×1
pandas ×1
python-3.x ×1
yarnpkg ×1