【C#】【System.Linq】一些便捷的数据处理方法(Range、Select)

这篇具有很好参考价值的文章主要介绍了【C#】【System.Linq】一些便捷的数据处理方法(Range、Select)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

因为用习惯了Python中一些便捷的方法,随即查询C#中有没有类似的。

 一、Range()方法

在Python中,range(Start,End,Step)可以直接生成一个可迭代对象,便用于需要循环多次处理某些代码块:

(注:Range方法中的End是开区间,range(1,10)实际的取值是(1 ~ 9))

1 for item in range(1, 10):
2     print(item, end='')
3 # Output:
4 # 123456789

 

在C#中也有相同的方法可以使用:

System.Linq 命名空间中的 Enumerable.Range(Start, Count)

1 foreach(int item in Enumerable.Range(1, 10))
2     Console.Write($"{item}=");
3 // Output:
4 // 1=2=3=4=5=6=7=8=9=10=

 

range(Start,End,Step)和Enumerable.Range(Start, Count)中的参数含义有别:

range   依次是 开始,结束,步长,且生成的对象并不包括End这个元素。

Range  依次是 开始,数量,即从1开始,向后数10个数,所以上述输出的结果是1~10,如果改成Range(0, 10)则结果将是0~9。

 

二、Select()方法

其对应着Python中的Enumerate()方法,即遍历元素的同时,并将对应的下标也赋值给index:

 1 for index, item in enumerate(range(1, 10)):
 2     print(f'元素 | {item} | 的下标是:{index}')
 3 # Output:
 4 '''
 5 元素 | 1 | 的下标是:0
 6 元素 | 2 | 的下标是:1
 7 元素 | 3 | 的下标是:2
 8 元素 | 4 | 的下标是:3
 9 元素 | 5 | 的下标是:4
10 元素 | 6 | 的下标是:5
11 元素 | 7 | 的下标是:6
12 元素 | 8 | 的下标是:7
13 元素 | 9 | 的下标是:8
14 '''

 

C#中Select()方法来实现,Select方法可以对集合进行转换,并返回一个包含转换后元素的新集合。

 1 foreach (var item in Enumerable.Range(1, 10).Select((num, index) => new { Index = index, Num = num }))
 2             Console.WriteLine($"Index: {item.Index}, Num: {item.Num}");
 3 
 4 // Output:
 5 //Index: 0, Num: 1
 6 //Index: 1, Num: 2
 7 //Index: 2, Num: 3
 8 //Index: 3, Num: 4
 9 //Index: 4, Num: 5
10 //Index: 5, Num: 6
11 //Index: 6, Num: 7
12 //Index: 7, Num: 8
13 //Index: 8, Num: 9
14 //Index: 9, Num: 10

 文章来源地址https://www.toymoban.com/news/detail-711652.html

Select()方法中的参数含义依次为,元素,下标,如果写成Select(index, num)那么index将表示元素,num将表示下标。

到了这里,关于【C#】【System.Linq】一些便捷的数据处理方法(Range、Select)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • c#处理3种json数据的实例介绍

    这篇文章主要介绍了c#处理包含数组、对象的复杂json数据的方法,,需要的朋友可以参考下 网络中数据传输经常是xml或者json,现在做的一个项目之前调其他系统接口都是返回的xml格式,刚刚遇到一个返回json格式数据的接口,通过例子由易到难总结一下处理过程,希望能帮到和

    2024年02月14日
    浏览(25)
  • c# List集合举例十二种数据处理用法

    Person 类: 请注意,这只是一个简单的示例类,实际场景中可能需要更复杂的属性和方法。 过滤List集合的对象,只保留sex为0的对象,并返回一个新的集合。 找出符合条件的第一个对象,没有返回null。 根据性别对集合进行分组,返回Map集合,每种性别个对应一个集合。 从集

    2024年02月11日
    浏览(28)
  • Pandas数据库查询更新create_engine用法,以及一些警告及弃用处理

    警示情况: 目前使用的连接方式: 避免警告提示推荐使用SQLAlchemy 需要先安装SQLAlchemy库: pip install sqlalchemy 新连接使用方式: sql语句需要使用text()包裹使用,如果没有包裹则会报错: engine需要使用connect()否则会出现如下报错: 原因:pd.read_sql方法传递“连接”变量而

    2024年02月10日
    浏览(26)
  • 基于C#和MATLAB对手机录音音频数据分析处理系统 毕业论文+项目源码

    摘要 当今科学技术发展迅猛,知识爆炸信息量的急剧增加不仅仅丰富了我们的现实生活,也对我们的信息处理技术提出了新的要求。音频信号在这信息洪流中占据着不可或缺的重要地位,诸如语音聊天,音频取证等在我们的生活中发挥着愈来愈重要的作用,故而对于音频的特

    2024年01月19日
    浏览(36)
  • 数据处理方法整理【目前最全】

    主要采用编写数据处理代码来对数据进行处理步骤,主要采用Python语言,使用相关的Pandas、Numpy、Scikit-learn等库来进行操作,一些代码实例如下。 1、缺失数据处理 数据缺失是指数据集中某行记录或某列特征的变量值存在空值的情况。常用的缺失值处理方法主要包括以下几种

    2024年02月03日
    浏览(27)
  • C# Linq源码分析之Take方法

    Take方法作为IEnumerable的扩展方法,具体对应两个重载方法。本文主要分析第一个接收整数参数的重载方法。 public static System.Collections.Generic.IEnumerable Take (this System.Collections.Generic.IEnumerable source, int count); 基本功能是从序列source中,返回指定个数count的相邻元素。 Take.cs Take方法本

    2024年02月13日
    浏览(28)
  • transforms数据预处理方法(一)

    1.transforms——裁剪 (1) transforms.CenterCrop(size) 功能: 从图像中心裁剪图片 size:所需裁剪图片尺寸 (2) transforms.RandomCrop (size, padding= None , pad_if_needed= False ,fill= 0 , padding_mode= ‘constant’) 功能: 从图片中随机裁剪出尺寸为size的图片 size:所需裁剪图片尺寸 padding:设置填充大小

    2024年02月02日
    浏览(34)
  • 数据预处理的方法有哪些?

    数据处理的工作时间占据了整个数据分析项目的70%以上。因此,数据的质量直接决定了分析模型的准确性。那么,数据预处理的方法有哪些呢?比如数据清洗、数据集成、数据规约、数据变换等,其中最常用到的是数据清洗与数据集成,下面小编将来详细介绍一下这2种方法。

    2024年02月02日
    浏览(28)
  • 数据偏度介绍和处理方法

    偏度(skewness)是用来衡量概率分布或数据集中不对称程度的统计量。它描述了数据分布的尾部(tail)在平均值的哪一侧更重或更长。偏度可以帮助我们了解数据的偏斜性质,即数据相对于平均值的分布情况。 有时,正态分布倾向于向一边倾斜。这是因为数据大于或小于平均

    2024年02月06日
    浏览(27)
  • 数据缺失值的4种处理方法

    缺失值的产生的原因多种多样,主要分为机械原因和人为原因。机械原因是由于机械原因导致的数据收集或保存的失败造成的数据缺失,比如数据存储的失败,存储器损坏,机械故障导致某段时间数据未能收集(对于定时数据采集而言)。 人为原因是由于人的主观失误、历史

    2024年02月04日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包