魅族s6怎么样黑色什么时候出来

如何查找List里从右起的第一个指定元素,求好方法【python吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:144,263贴子:
如何查找List里从右起的第一个指定元素,求好方法收藏
a = [1, 88, 81, 81, 81, 3]现需要查找最右边的81的index (即4)自己的方法觉得太繁琐了,len(a) - a[::-1].index(81) - 1python好像没提供内置的方法吗?各位大神有通用的好点子吗?
来个更繁琐点的dict(zip(*zip(*sorted(dict(enumerate(a)).items()))[::-1])).get(81)
邪兽大神,你这是要逆天吗?不要这样啊,我的意思是简单点的方法,或者容易理解的。比如lastIndexOf这种的
for i,j in enumerate(a):...
if j==81:...
受到大神们的启发,这个比较容易理解了。d=dict(zip(range(len(a)),a))for key in sorted(d,reverse=True):
if d[key] == 81:
你自己的那个应该就是最简单的了。
来个更容易理解的 ^_^
很菜很菜的想法for i in range(len(a)-1,-1,-1):
if a[i]==81:
reverse下,再find
登录百度帐号推荐应用扫二维码下载作业帮
2亿+学生的选择
下载作业帮安装包
扫二维码下载作业帮
2亿+学生的选择
C# 中如何从List集合中提取第一个值
米饭wan16742
扫二维码下载作业帮
2亿+学生的选择
索引位0的就是第一个.List list=new List();list="数据集";list[0]就是第一个值
为您推荐:
其他类似问题
扫描下载二维码定义:List&T&类表示可通过索引访问的对象的强类型列表,提供用于对列表进行搜索、排序和操作的方法。
作用:泛型最常见的用途是泛型集合我们在创建列表类时,列表项的数据类型可能是int,string或其它类型,如果对列表类的处理方法相同,就没有必要事先指定数据类型,留待列表类实例化时再指定。相当于把数据类型当成参数,这样可以最大限度地重用代码,保护类型的安全以及提高性能。
List的一般用法所属命名空间: System.Collections.Genericpublic class List&T&:IList&T&,Icollection&T&,IEnumerable&T&,IList,Icollection,IenumerableList&T&是ArrayList类的泛型等效类,该类使用大小可按需动态增加的数组实现IList&T&泛型接口
(1)声明 List&T&mlist = new List&T&();&eg: string[] Arr = {"a","b","c"};&&&& List&string& mlist = new List&string&(Arr);
(2)添加一个元素 List.Add(T item) && eg: mlist.Add("d");
(3)添加集合元素&& eg: string[] Arr2 ={"f","g"."h"};&&&&&& mlist.AddRange(Arr2);
(4)在index位置添加一个元素 Insert(int index,T item)&& eg: mlist.Insert(1,"p");
(5)遍历List中元素
  foreach(T element in mlist) T的类型与mlist声明时一样     {       Console.WriteLine(element);&&&&&&&&& }
&&& eg:&&& foreach(string s in mlist)&&&&&&&&& {&&&&&&&&&&&& Console.WriteLine(s);&&&&&&&&&& }
(6)删除元素
&&& List.Remove(T item) 删除一个值&&& eg: mlist.Remove("a");
&&& List.RemoveAt(int index);删除下标为index的元素&&& eg: mlist.RemoveAt(0);&&&&&&& List.RemoveRange(int index,int count); 下标index开始,删除count个元素&&& eg:mlist.RemoveRange(3,2);
(7)判断某个元素是否在该List中
&&& List.Contains(T item) 返回true或false&&& eg:&&& if(mlist.Contains"("g"))&&&&&& Console.WriteLine("g存在列表中");&&& else&&&&&& mlist.Add("g");
(8)给List里面元素排序 List.Sort() 默认是元素每一个字母按升序&& eg: mlist.Sort();
(9)给List里面元素顺序反转 List.Reverse() 可以与List.Sort()配合使用
(10)List清空 List.Clear()&& eg: mlist.Clear();
(11)获得List中元素数目 List.Count() 返回int值&& eg: mlist.count();
List进阶,强大方法
(1)List.FindAll方法:检索与指定谓词所定义的条件相匹配的所有元素&&&&&&&& class program&&& {&&&&&& static void Main(stirng[] args)&&&&&& {&&&&&&&& student stu = new student();&&&&&&&& stu.Name="arron";&&&&&&&& List&student& students= new List&student&();&&&&&&&& students.Add(stu);&&&&&&&& students.Add(new student("candy"));&&&&&&&& FindName myname = new FindName("arron");&&&&&&&& foreach(student s in students.FindAll(new Predicate&student&(myname.IsName)))&&&&&&&& { Console.WriteLine(s);}&&&&&& }
&&& public class student&&& {&&&&&& public string Name{}&&&&&& public student(){}&&&&&& public override string ToString()&&&&&&& {&&&&&&&&&&& return string.Format("姓名:{0}",Name);&&&&&&&& }&&&& }
&&& public class FindName&&& {&&&&& private string _&&&&& public FindName(string Name)&&&&& {& this._name=N}&&&&& public bool IsName(student s)&&&&&& { return (s.Name==_name)?true:}&&& }
(2)List.Find方法 搜索与指定谓词所定义的条件相匹配的元素,并返回整个List中的第一个匹配元素
&&& //Predicate是对方法的委托,如果传递给它的对象与委托定义的条件匹配,则该方法返回true,当前List的元素  被逐个传递给Predicate委托,并在List中间前移动,从第一个元素开始,到最后一个元素结束,当找到匹配项  时处理停止
  第一种方法 委托给拉姆达表达式:  eg:  &&&& string listFind = mlist.Find(name=&&&&&&& {&&&&&&&&& if(name.length&3)&&&&&&&&&&&&&&&&&&&&&&&&&&& });
&&&&第二种方法 委托给一个函数&&& eg:&&&& public bool ListFind(string name)
&&&&&&&&&&& if (name.Length & 3)
&&&&&&&&&&& {
&&&&&&&&&&&&&&&
&&&&&&&&&&& }
&&&&&&&&&&&
&&&&& 这两种方法的结果是一样的
(3) List.FindLast方法& public T FindLast(Predicate&T& match);确定是否 List 中的每个元素都与指定的谓词所定义的条件相匹配。用法与List.Find相同。
(4) List.TrueForAll方法:& 确定是否 List 中的每个元素都与指定的谓词所定义的条件相匹配。
&public bool TrueForAll(Predicate&T& match);
(5) List.Take(n):& 获得前n行 返回值为IEnumetable&T&,T的类型与List&T&的类型一样
IEnumerable&string& takeList=& mList.Take(5);
&&&&&&&&& foreach (string s in takeList)
&&&&&&&&& {
&&&&&&&&&&&&& Console.WriteLine("element in takeList: " + s);
&&&&&&&&& }
&&&&&& 这时takeList存放的元素就是mList中的前5个
(6) List.Where方法:检索与指定谓词所定义的条件相匹配的所有元素。跟List.FindAll方法类似。
&&&&&&&&&&& IEnumerable&string& whereList = mList.Where(name =&
&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&& if (name.Length & 3)
&&&&&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&& else
&&&&&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& });
&&&&&&&& foreach (string s in subList)
&&&&&&&& {
&&&&&&&&&&&& Console.WriteLine("element in subList: "+s);
&&&&&&&& }
&&&&&&&& 这时subList存储的就是所有长度大于3的元素
(7)List.RemoveAll方法:移除与指定的谓词所定义的条件相匹配的所有元素。
public int RemoveAll(Predicate&T& match);
&&&&&&&&&&& mList.RemoveAll(name =&
&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&& if (name.Length & 3)
&&&&&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&&&&&& else
&&&&&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&&& });
&&&&&&&&&&& foreach (string s in mList)
&&&&&&&&&&& {
&&&&&&&&&&&&&&& Console.WriteLine("element in mList:&&&& " + s);
&&&&&&&&&&& }
&&&&& 这时mList存储的就是移除长度大于3之后的元素。
阅读(...) 评论()}

我要回帖

更多关于 魅族s6评测视频 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信