当前位置:网站首页>【UiPath2022+C#】UiPath 练习-数据操作
【UiPath2022+C#】UiPath 练习-数据操作
2022-08-05 05:17:00 【会敲键盘的肘子】
【UiPath2022+C#】UiPath 练习-数据操作
文章目录
环境
UiPath Studio Community 2022.4.3
Windows
C#
练习
练习 1 - 列表
对列表进行排序并打印 3 个值
给定国家/地区的输入列表,请对该列表进行排序,并按降序打印前 3 个值。
注意: 请使用此值初始化列表:new List(of String) from {“Germany”, “Spain”, “Japan”, “Brazil”, “India”, “China”}。
解决方案
- 以序列形式启动项目,并使用以下默认值定义字符串变量(“country”)的列表,默认值为:new List(string) (){“Germany”, “Spain”, “Japan”, “Brazil”, “India”, “China”}。
- 添加一个调用方法活动。在“方法名称”下写入“Sort”,在“目标对象”下写入“country”。保持“目标类型”不变 (null)。
- 在“方法名称”下再添加一个“调用方法”活动。在“方法名称”下写入“Reverse”,并填写其他 2 个字段,就像在前面的“调用方法”中一样
- 创建一个新的字符串变量列表newVariable。
- 向“设计器”面板添加一个分配活动。
- 在值字段中,输入原始变量的名称,再输入 country.GetRange(0,3)。此变量将前三个值存储在排序列表中。
- 添加一个写入行活动。这将打印值。
- 使用string.Join方法:string.Join (", ", newVariable.ToArray()),在写入行活动的文本中。

练习 2 - 列表和日期时间
验证列表中的日期在今年是否已过
给定格式为 dd.MM.yyyy 的输入字符串列表,请检查是否有任何日期的月份与当前月份相同,然后打印该日期以输出。
对于具有不同月份的日期,请打印以输出从当前日期到列表日期(当年)为止经过/到期的天数。
注意: 使用以下值初始化列表:new List(string) from {“01.02.1980”, “04.05.1985”,“06.08.1988”,“24.09.1999”,“18.11.1986”,“11.10.1983”}
解决方案
在序列中使用遍历循环活动遍历列表中的所有项目(“变量名中的遍历循环项目”),并在正文中使用以下活动和方法:
创建一个日期时间变量(“dateTime”),并使用DateTime.ParseExact方法 ,在“分配”活动中,以转换为日期时间:dateTime= DateTime.ParseExact(item, “dd.MM.yyyy”, null)
使用“IF 条件”活动以验证项目的月份是否与当前月份相同:dateTime.Month == DateTime.Today.Month:
- 如果满足条件,则使用写入行活动和“ToString(“yyyy-MM-dd”)”方法打印消息。
- 如果不满足条件,则使用以下活动和方法添加序列:
- a. 使用“分配”活动中的“Subtract”方法创建一个新的 int32 类型的变量(“day”),以计算当月与项目月份之间的差值:day = DateTime.Now.Subtract(new DateTime(DateTime.Today.Year, dateTime.Month, dateTime.Day)) .Days
- b. 将条件声明为 day > 0,然后使用“IF 条件”活动验证日期是未来日期还是过去日期,并使用“写入行”活动中的“String.Format”方法为过去或未来月份打印不同的消息:string.Format(“从当前日期到列表日期(当年{0}月{1}日)为止经过{2}天”,dateTime.Month, dateTime.Day,day) 和 string.Format(“从当前日期到列表日期(当年{0}月{1}日)为止到期还剩下{2}天”,dateTime.Month, dateTime.Day,Math.Abs(day)).
流程和变量

If语句

练习 3 - 字典和整数
计算并打印每位环法自行车赛冠军的获胜次数
给定包含年份和姓名的输入字典,请计算每位冠军的获胜次数,并打印所有冠军的姓名及其相应的获胜次数。
注意: 使用以下值初始化(Int32、字符串)类型的字典 - New Dictionary(Of Int32,String) From { {2006,“Oscar Pereiro”},{2007,“Alberto Contador”}, {2008, “Carlos Sastre”}, {2009,“Alberto Contador”}, {2010, “Andy Schleck”}, {2011, “Cadel Evans”}, {2012,“Bradley Wiggins”}, {2013,“Chris Froome”}, {2014,“Vincenzo Nibali”},{2015,“Chris Froome”},{2016,“Chris Froome”},{2017,“Chris Froome”}, {2018,“Geraint Thomas”}}
解决方案
- 以序列形式启动项目并创建一个新的字典,类型为 (String, Int32)
- 利用“遍历循环”(“遍历 FirstDictionaryName.Values 中的 WinnerNames”)遍历第一个字典中的值,并检查该值是否已存在且已作为新字典的键,检查时使用**.ContainsKey方法**, 该方法在“IF 条件”活动(“SecondDictionaryName.ContainsKey(WinnerName)”)中:
- 如果满足条件,则使用“分配”活动以增加相应键的值:WinnerCounts(WinnerName) = WinnerCounts(WinnerName) + 1
- 如果不满足条件,则使用“调用方法”活动将键添加到第二字字典,其值为“1”,以及使用目标对象添加第二个字典名称,并“Add”作为方法名称
- 使用“遍历循环”活动遍历第二个字典(“SecondDictionaryName 中的遍历循环冠军”),并利用“写入行”活动打印所有冠军的姓名及其相应的获胜次数。
流程和变量

遍历循环

练习 4 - 字典和双精度数
计算发送到一个城市的包裹总重量
考虑某家航运公司的数据库,其中包含公司人员,以及公司发往世界各地某些城市的包裹及其重量。该数据库是一个字典,其键为字符串类型(人员姓名),值为字典类型(字符串/城市、双精度数/重量)。
请计算一个城市目的地的总重量。计算完成后,应向用户显示一个输入对话框,其中包含输入数据字典中显示的不同城市列表。如果用户没有从输入对话框中选择任何值,则打印“用户未选择任何值”;否则,您可以打印“发送到 <选定城市> 的包裹总重量为 x.xx”(使用两位数)。
注意:对于输入数据,请下载下面已定义字典的工作流。
New Dictionary(Of String, Dictionary(Of String, Double)) From {
{“John C”, New Dictionary(Of String, Double) From { {“Madrid”,2.1},{“Paris”,1.1}} },
{“Sarah C”, New Dictionary(Of String, Double) From { {“New York”,2.1},{“Paris”,3.3},{“Berlin”, 0.8}} },
{“Kyle R”, New Dictionary(Of String, Double) From { {“San Francisco”,2.8},{“NewYork”,1.1}} },
{“Johnny B”, New Dictionary(Of String, Double) From { {“New York”,2.1},{“Paris”,3.3}, {“Cairo”,1.3},{“Chicago”,1.9}} }}
解决方案
- 以序列形式启动项目.
- 使用“遍历循环”遍历初始字典的值,然后(在正文中)使用“遍历循环”活动遍历第二个字典(城市)的键,并检查字典中是否已有城市,(使用“IF 条件”和“包含”方法):
- 如果满足条件,则使用“分配”活动将存储在相应值中的重量添加到现有值中;
- 如果不满足条件,则使用“分配”活动将存储在相应值中的重量;
3.使用“输入对话框”活动,通过在“活动”属性的“选项”下使用 SecondVariableName.Keys.ToArray() 显示所有城市
a.如果用户选择城市,则使用“写入行”打印“发送到 <选定城市> 的包裹总重量为 x.xx”。
流程和变量

For Each配置

If配置

练习 5 - 输入验证
验证用户的字符串输入
开发一个工作流,根据一组规则要求用户输入文本,并将输入验证的规则合并到工作流。
更具体地说,用户输入的字符串必须通过以下验证规则:
- 最小长度:8 个字符
- 以大写字母开头
- 最多 20 个字符
若输入不符合规则,允许用户有 3 次重新输入的机会(不考虑用户未输入任何内容的情况)。
注意: 在本练习中,请使用流程图。
解决方案
- 以流程图的形式启动项目(考虑到预期的大量决策点),并通过“消息框”将规则告知用户。
- 向用户显示“输入对话框”。
- 检查用户是否已在输入字段中输入任何内容。如果未提供任何文本,则返回到"输入对话框"阶段。
- 使用正则表达式验证输入文本正则表达式(“是匹配”活动)-“高级”类型,
"^[A-Z]{1}\w{7,18}$" - 使用 Int32 变量计算用户输入尝试失败次数(不考虑未输入任何内容)。
- 使用决策节点检查用户是否已达到 3 次失败尝试。
- 如果用户达到最多 3 次失败尝试,则使用“写入行”活动输入以输出以下消息:“超出最大重试次数”,并结束执行。
- 如果正则表达式验证通过,则打印以下消息以输出:“您的文本遵循规则!”,并结束执行。您可以使用变量存储向用户显示的文本。
流程和变量

练习 6 - 更换占位符
获取输入信息并用来填充字符串
您具有以下模板:“ <姓名>,您好,我们想邀请您参加下周 <星期几> 的开幕活动,请在本周末之前确认。"
创建一个工作流以获取用户输入,并替换上述短语中提供的输入数据。
注意: 请使用上面的文本创建一个字符串变量。
解决方案
- 以序列形式启动项目,并创建2 个字符串变量,分别存储姓名和星期几。
- 使用 2 个“输入对话框”活动来获取用户的输入。
- 对输入数据的 2个字符串中的每个字符串,在“分配”活动中使用“Replace”方法:VariableName = VariableName.Replace(“”,“”)。
- 使用“写入行”活动打印输出。
流程和变量

练习 7 - 使用正则表达式提取电子邮件地址
从字符串提取电子邮件地址(使用正则表达式)
给定一个包含一个电子邮件地址的字符串,创建一个工作流以使用正则表达式提取电子邮件地址。
注意: 对于输入,请使用具有以下值的字符串变量:“Please use the following address to contact me [email protected], it’s the company email”。
解决方案
- 以序列形式启动项目.
- 使用“匹配项”活动和为电子邮件地址量身定制的正则表达式,并使用 IEnumerable 变量 存储所提取的电子邮件地址。
- 使用“遍历循环”活动遍历所创建的变量中的值,并使用“写入行”活动和“值”方法显示值。
流程和变量

正则配置

文档
边栏推荐
- 对象比较
- 【Shell编程】第一章:子串
- 浅谈遇到的小问题
- 一个小时教你如何掌握ts基础
- [Intensive reading of the paper] R-CNN's Bounding box regression problem is detailed
- 【数据库和SQL学习笔记】3.数据操纵语言(DML)、SELECT查询初阶用法
- 读论文 - Unpaired Portrait Drawing Generation via Asymmetric Cycle Mapping
- OSPF网络类型
- ACL 的一点心得
- CVPR2021 - Inception Convolution with Efficient Dilation Search
猜你喜欢

Comparison and summary of Tensorflow2 and Pytorch in terms of basic operations of tensor Tensor

【22李宏毅机器学习】课程大纲概述

【数据库和SQL学习笔记】8.SQL中的视图(view)

LeetCode刷题之第33题
![[Kaggle project actual combat record] Steps and ideas sharing of a picture classification project - taking leaf classification as an example (using Pytorch)](/img/7d/7f1301c30034f1c247d41f04c40244.png)
[Kaggle project actual combat record] Steps and ideas sharing of a picture classification project - taking leaf classification as an example (using Pytorch)

11%的参数就能优于Swin,微软提出快速预训练蒸馏方法TinyViT

【shell编程】第二章:条件测试语句

(C语言)动态内存管理
![[Pytorch study notes] 9. How to evaluate the classification results of the classifier - using confusion matrix, F1-score, ROC curve, PR curve, etc. (taking Softmax binary classification as an example)](/img/ac/884d8aba8b9d363e3b9ae6de33d5a4.png)
[Pytorch study notes] 9. How to evaluate the classification results of the classifier - using confusion matrix, F1-score, ROC curve, PR curve, etc. (taking Softmax binary classification as an example)

发顶会顶刊论文,你应该这样写作
随机推荐
教你如何封装功能组件和页面组件
网络信息安全运营方法论 (下)
MSRA proposes extreme masking model ExtreMA for learning instances and distributed visual representations
网络ID,广播地址,掩码位数计算
[Pytorch study notes] 11. Take a subset of the Dataset and shuffle the order of the Dataset (using Subset, random_split)
It turns out that the MAE proposed by He Yuming is still a kind of data enhancement
OSPF故障排除办法
[Kaggle project actual combat record] Steps and ideas sharing of a picture classification project - taking leaf classification as an example (using Pytorch)
【数据库和SQL学习笔记】4.SELECT查询2:排序(ORDER BY)、聚合函数、分组查询(GROUP BY)
HuiFer 带你读懂 BeanFactory getBean 方法
十、视图解析原理与源码分析
二、自动配置之底层注解
Polygon计算每一个角的角度
LeetCode刷题之第61题
[After a 12] No record for a whole week
将一句话的单词进行倒置(C语言纯代码)
MySQL
CVPR最佳论文得主清华黄高团队提出首篇动态网络综述
读论文- pix2pix
GIS面试问题