Python | 巧用生成表达式、让循环显得高大上 !

MIMO-OFDM 通信-感知一体化(ISAC)中的联合优化与性能权衡 本文深入探讨了MIMO-OFDM技术在通信-感知一体化(ISAC)系统中的核心作用与挑战。文章分析了如何通过联合优化资源分配、波束成形与波形设计,在有限的频谱与硬件资源下,实现通信速率与感知精度之间的最佳平衡,并指出了工程实践中面临的同步、干扰等关键难题。 阅读详情

 

 

 

 

 

Python资源共享群:626017123

在 Python 中使用生成表达式,有以下三点好处:

1. 提高代码运行速度

2. 简化代码,使代码显得更精炼

3. (重点)是你的代码看上去像“高手”所做

 

举例来说,如果我们想生成一个0~9数字的平方的列表,一种做法可能是这样的:

1l = []
2for i in range(10):
3    l.append(i**2)

 

而如果使用生成表达式的话就只需要一行代码:

In [24]: l = [i**2 for i in range(10)]
In [25]: l
Out[25]: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

 

是不是很酷(装)炫(B)?

生成表达式也可以用来生成字典:

In [26]: {i:i**2 for i in range(10)}
Out[26]: {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}

 

在生成表达式中还可以使用条件判断。比如,我们想生成0~9中偶数的平方的列表:

In [27]: [i**2 for i in range(10) if i % 2 == 0]
Out[27]: [0, 4, 16, 36, 64]

 

还可以在生成表达式中使用两个变量:

In [28]: [i*j for i in range(3) for j in range(3)]Out[28]: [0, 0, 0, 0, 1, 2, 0, 2, 4]

 

下面我们来看个小案例,以下代码使用生成表达式来生成一副扑克牌。

1poker_color = ['黑桃','红桃','方块','梅花']
2poker_num = [str(i) for i in range(2,11)] + ['J','Q','K','A']
3pokers = [c + n for c in poker_color for n in poker_num] + ['大王','小王']

 

30分钟上手YOLO26 nano:INT8量化部署到智能相机,推理速度提升43% 微调代码(仅需5行,数据集遵循COCO格式)data="custom_data.yaml", # 数据集配置文件epochs=20, # 少量轮数即可收敛batch=8,imgsz=640model.save("yolov26n_custom.pt") # 保存微调后的模型本文在30分钟内完成了YOLO26 nano的INT8量化与智能相机部署,核心步骤为环境准备→模型获取→ONNX导出→INT8量化→部署推理。 阅读详情

相关推荐

基于Simulink的防空导弹六自由度弹道建模与仿真实战

本文详细介绍了基于Simulink的防空导弹六自由度弹道建模与仿真方法。通过分析导弹动力学原理、Simulink环境配置、气动力建模、推进与控制系统设计等关键环节,提供了一套完整的实战指南。文章特别强调了六自由度模型在防空导弹仿真中的重要性,并分享了常见问题排查与优化建议,为相关领域工程师提供实用参考。

apple5的专栏 868

python迭代器(Iterator)、生成器(Generator)和生成器表达式(Generator expressions)

python迭代器(Iterator)、生成器(Generator)介绍。

cnds123的专栏 1779

舵机PWM信号转互斥继电器开关信号

-----------------本文由“麦粒电子”撰写,并提供相应产品服务。---------------- 叙述 上次的PWM转继电器开关方案得到大家的不少好评(博客链接),但是发现有些玩家需要一路PWM同时去控制两路继电器开关通断,并且两者是互斥的,好去控制两种不同的负载。所以就继续升级了如下的模块。 正常的控制部件顺序这样:遥控器按钮拨动,遥控器接收机相应通道PWM值变化,PWM转开关模块检测PWM值发生变化从而驱动相应机械继电器触点吸合释放。本模块的两个继电器动作是互斥的,也就是不会同时吸合。

Mai_LiElectronic的博客 1633

Python编程——常用的Python单行实现功能代码示例

常用Python 一行实现功能代码示例

知来者逆的博客 625

MATLAB实战:手把手教你用三频四步相移法搞定结构光三维重建(附完整代码)

本文详细介绍了如何使用MATLAB实现三频四步相移法进行高精度结构光三维重建。通过光栅图像预处理、相位计算、多频外差与相位解包裹等步骤,结合完整代码示例,帮助读者掌握从二维图像到三维点云的关键技术。该方法在工业检测和逆向工程中具有抗干扰能力强、高分辨率和鲁棒性等优势。

weixin_29201933的博客 338

大连理工大学中文情感词汇本体库(含情绪分析代码)

中文文本数据的情绪计算昨天如何对微博推文进行情绪分析(细粒度情感分析)介绍了英文的NRC情绪词典。虽然支持中文,但由于制作问题,导致并不完全适应中文场景。今天介绍大连理工大学中文情感...

大邓和他的Python 4万+

[Python技巧]如何加快循环操作和Numpy数组运算速度

2019 年第 53 篇文章,总第 77 篇文章本文大约 4200字,阅读大约需要 11分钟前言Python 虽然写起来代码量要远少于如 C++,Java,但运行速度...

AI 算法笔记 7381

【一文搞懂几种常用推荐算法】

协同过滤:适合用户-物品交互数据丰富的场景。矩阵分解:能处理稀疏数据,适合显式评分预测。基于内容:依赖物品特征,解决冷启动问题。NMF:适用于非负数据(如点击率、购买记录)。根据实际需求选择算法,或结合多种方法构建混合推荐系统。

专注技术的博主 2637

Python小练习之字典列表的转换及for循环

寻找差异#原有dict old_dict={ "#1":{'hostname':c1,'cpu_count':2,'mem_capicity':80}, "#2":{'hostname':c1,'cpu_count':2,'mem_capicity':80} "#3":{'hostname':c1,'cpu_count...

weixin_34186950的博客 280

Linux | Ubuntu18.04安装WIFI6 AX201驱动完整教程

本节介绍了如何在Ubuntu18下安装AX201驱动的教程。

九七的博客 8881

Android蓝牙中的Rfcomm协议介绍

RFCOMM(Radio Frequency Communications)是一种基于蓝牙技术的串口仿真协议,以下是详细介绍:一、协议概述二、工作原理三、应用场景

手机-手表蓝牙开发工程师的博客 713

python中for循环中使用lambda表达式遇到的坑

python中for循环中使用lambda表达式遇到的坑 在接手这个项目后,由于主要使用的语言都是python,故本着已有语言基础以用到就现学现用的想法使用python。于是就过了一遍基础语法,然后就开始了现学现用的过程,一开始关于cv的一些基本操作什么的还是能够解决的。直到最近被一个小bug困扰了很长时间,整个国庆都没有找出来(虽然有四天在画uml图,但是也是实在看那段代码看吐了,不想改了),才...

qq_43218657的博客 6105

【YOLOv8改进-注意力机制】LSKNet(Large Selective Kernel Network ):空间选择注意力

【YOLOv8改进-注意力机制】LSKNet(Large Selective Kernel Network ):空间选择注意力 (论文笔记+引入代码)。LSKNet能够动态调整其大的空间接收场,以更好地模拟遥感场景中各种对象的范围上下文。据我们所知,这是首次在遥感目标检测领域探索大型和选择性核机制。

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 2864

python绘制梅花_Python | 巧用生成表达式、让循环显得高大上 !

Python资源共享群:626017123在 Python 中使用生成表达式,有以下三点好处:1. 提高代码运行速度2. 简化代码,使代码显得更精炼3. (重点)是你的代码看上去像“高手”所做举例来说,如果我们想生成一个0~9数字的平方的列表,一种做法可能是这样的:1l = []2for i in range(10):3 l.append(i**2)而如果使用生成表达式的话就只需要一行代码:...

weixin_39928003的博客 929

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

这十个Python语法,让你的代码更为精炼高效!

Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 for - else 什么?不是 if 和 else 才是原配吗?No,你可能不知道,else 是个脚踩两只船的家伙,for 和 else 也是一对,而且是合法的。十大装B.

python_9988的博客 1万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

python中的lambda表达式

lambda表达式 lambda表达式是一种简洁格式的函数。该表达式不是正常的函数结构,而是属于表达式的类型。 基本格式: lambda 参数,参数...:函数功能代码 如:lambda x,y:x + y 获取2个值的和的lambda函数 带分支格式: lambda 参数,参数... :值1 if 条件表达式 else 值2 如:lambda sex : '有胡子' if sex...

秋叶夏风的博客 492

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Python 生成器&迭代器

一.生成器表达式,列表推导式   1.列表推导式   1.1 分类   a.循环模式   [变量(加工后的变量) for 变量 in iterable]   b.筛选模式   [变量(加工后的变量) for 变量 in iterable if 条件] 10以内所有数的平方 print([i*i for i in range(11)]) 30以内所有能被3整除的数的...

aihui0989的博客 137

python列表推导式生成随机数_python 列表推导式和生成式,部分内置函数

目录一、列表推导式二、生成表达式前置知识:可迭代对象包含的数据类型:str、list、dict、tuple、set、range(序列)文件句柄本身也是迭代器。一、列表推导式列表推导式的优缺点:优点:节省代码一行搞定;高大上的感觉缺点:不好排错.整体说明:凡是用列表推导式构造的列表对象,用其他方式都可构建,但非常复杂的列表,列表推导式是构建不出的,分类:[变量(加工后的变量) for 变量 in i...

weixin_39907316的博客 462

Python-02 生成器表达式,列表推导式

列表推导式和生成器表达式 列表推导式,生成器表达式1,列表推导式比较直观,占内存2,生成器表达式不容易看出内容,省内存. [ 变量(加工后的数据) for 变量i in 可迭代的数据类型 ] 列表的推导式, 循环模式[ 变量(加工后的数据) for 变量i in 可迭代的数据类型 if 条件] 列表的推导式, 筛选模式 1.[变量(加工后的变量) for 变量 in iterable...

weixin_30920513的博客 174

学习python第七节课:for循环

文章目录一、 for循环1.1 range函数1.2 使用range函数编写for循环1.3 巩固练习二、循环中的continue 与 break2.1 continue2.2 continue 与 if2.2.1 两种思路比较2.2.2 continue让代码更容易理解2.3 break三、for...else3.1 语法3.2 示例3.3 退出循环的方式四、嵌套循环4.1 两层嵌套for循环4.2 三层嵌套循环4.3 嵌套循环的终止五、for循环与while循环对比 一、 for循环 Python中

tong_ge的博客 2602

python 列表推导式函数_python 列表推导式和生成式,部分内置函数

可迭代对象: str,list,dict,tuple,set,range文件句柄:是迭代器with open('01 今日内容大纲', encoding='utf-8') as f1:# f1.read()# print('__iter__' in dir(f1))# print('__next__' in dir(f1))# l1 = [1, 2, 3]# from co...

weixin_35778245的博客 261

兄弟连学python(5)——lambda表达式

lambda表达式 lambda表达式是一种简洁格式的函数。该表达式不是正常的函数结构,而是属于表达式的类型。 基本格式: lambda 参数,参数...:函数功能代码 如:lambda x,y:x + y 获取2个值的和的lambda函数 带分支格式: lambda 参数,参数... :值1 if 条件表达式 else 值2 如:lambda sex : '有胡子

qq_41300019的博客 231

python宣传口号_[转]Python十个高大上的语法

Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。1. for - else什么?不是 if 和 else 才是原...

weixin_39631951的博客 406

Python迭代器,可迭代对象,生成器

Python迭代器,可迭代对象,生成器for循环语句的过程迭代器产生一个迭代器类判断是否为迭代器可迭代对象判断是否为可迭代对象自定义一个可迭代对象xrange迭代器,可迭代对象的异同生成器创建生成器的方法生成器表达式生成器函数使用yield使用send迭代器和生成器异同 for循环语句的过程 在执行for循环的过程中,例如: list1 = [1, 2, 3] for i in list1: print(i) 执行步骤如下: 先执行执行 iter(list1),返回一个迭代器对象。 每次迭代时会执行一

weixin_48668114的博客 374

python 列表推导式和生成式,部分内置函数

可迭代对象: str,list,dict,tuple,set,range 文件句柄:是迭代器 with open('01 今日内容大纲', encoding='utf-8') as f1: # f1.read() # print('__iter__' in dir(f1)) # print('__next__' in dir(f1)) # l1 =...

dcl44259的博客 262
上一篇: Python一行代码搞定炫酷可视化,Cufflinks值得拥有 !
下一篇: python模拟登陆 requests.session会话劫持 !
普通网友
博客等级 码龄7年 438粉丝 263原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值