我有一个清单L.
L = [[1,2,3],[5,7],[1,3],[77]]
Run Code Online (Sandbox Code Playgroud)
我想返回最长子列表的长度而不需要循环它们,在这种情况下为3因为[1,2,3]是长度3并且它是四个子列表中最长的.我尝试了len(max(L)),但这并不是我想要的.有没有办法做到这一点,或者是我唯一的循环方式?
我已经用Google搜索了这一点,通常回复相当复杂,我并不是真的理解所有的行话.是否有一个简单的解释为什么调试模式这么慢?为什么不总是在Release中运行?
我刚刚在C++中遇到了一个令人讨厌的错误.所以我有一个寄存器和值列表,它们包含在一个结构中,然后这些结构在一个数组中初始化.但后来我不小心输了()而不是{}.这是一些测试代码:
#include <stdio.h>
struct reg_val {
unsigned reg;
unsigned val;
};
struct reg_val faulty_array[] = {
{0x5001, 0xff},
{0x5580, 0x01},
(0x5580, 0x02), //<- THIS LINE IS THE PROBLEM
(0x5589, 0x00), //<- AND THIS LINE
};
struct reg_val good_array[] = {
{0x5001, 0xff},
{0x5580, 0x01},
{0x5580, 0x02},
{0x5589, 0x00},
};
int main()
{
unsigned i;
unsigned faulty_size = sizeof(faulty_array) / sizeof(struct reg_val);
printf("Size of faulty array: %d\n", faulty_size);
for (i = 0; i < faulty_size; ++i) { …Run Code Online (Sandbox Code Playgroud)