问题描述
[[1,1,3],[2,3,2]]
我想将每个 3 中出现 3 的次数作为一个列表: ((0,0),(1,1),(2,(3,2))
最好的方法是什么?我需要转置然后使用列表理解吗?
解决方法
你不需要转置,只需保留一个带计数器的辅助字典:
m = [[1,1,3],[2,3,2]]
counters = {}
for j in range(len(m)):
for i in range(len(m[j])):
counters.setdefault(i,0)
counters[i] += m[j][i] == 3
print(tuple(counters.items()))
打印:
((0,0),(1,1),(2,(3,2))
,
使用数据帧
import numpy as np
import pandas as pd
df = pd.DataFrame([[1,2]])
print((df==3).sum().sum())
3
有 3 个元素等于 3。
,花了一些时间。我对理解有点生疏。感谢您的出色练习。
{% if "update" in request.get_full_path %}
<form action="{% url 'account-update' account.id %}" method="PUT">
{% else %}
<form action="{% url 'account-create' account.id %}" method="POST" enctype="multipart/form-data">
,
这行得通吗?
Set