list如何切割成两个list
1. python里如何把一个list分成两个
思考,用正则表达式,把字符串里的数字提前出来. 数字排序之后,如果第一个和最专后一个相等,那么数字部属分就完全相等
参考代码
#!/usr/bin/envpython
#-*-coding:utf-8-*-
#python2.7
importre
deffunc(li):
nums=[]
forsinli:
s=re.findall(r'D*(d+)D*',s)
nums.append(int(s[0]))
printnums
#排序
nums.sort()
#如果排序后,第一个和最后一个相等,那么就完全相等
ifnums[0]==nums[-1]:
printTrue,"数字完全相等"
else:
printFalse,"数字不全部相等"
test1=['2C','2S','2H']
test2=['A3C','D2S','C2H']
func(test1)
func(test2)
测试
[2,2,2]
True数字完全相等
[3,2,2]
False数字不全部相等
2. 如何把一个ArrayList分成多个特定大小的ArrayList
API里面应该是没有的,但是你可以先生成若干个ArrayList,然后遍历本来的ArrayList,将里面的元素按照要求放到前面的生成的ArrayList中去
3. python编程,把一个整数list分成两个list,要求两个(list里整数总和)之差值最小
#!/usr/bin/env python
#-*- encoding: utf-8 -*-
from itertools import compress, imap
def fun(lst):
min_number = 100000000
length = len(lst)
total = 2**length
record = None
f = lambda x:compress(lst, imap(int,bin(x)[2:].rjust(length,Ɔ')))
for n in xrange(total):
plus = f(n)
minus = f(total-n-1)
tmp = abs(sum(plus) - sum(minus))
if tmp < min_number:
record = n
min_number = tmp
plus = list(f(record))
minus = list(f(total-record-1))
return (plus, minus, min_number)
def main():
print '(分组1, 分组2, 差值)'
print fun([1,2,3,1,4,10,7,5,23])
main()
拿了个list来穷举试了一下,Python2.7.3测试通过。
4. 怎么把list变成两个list java
list0 ---->list1、list2
List list1 = new ArrayList();
List list2 = new ArrayList();
for(int i=0;i <list0.size();i++){
list1.add(list0.get(i));
list2.add(list0.get(i));
}
5. 两个List拼接成一个List,怎么拼接
List有个 addAll方法
boolean addAll(Collection<? extends E> c)
添加指定 collection 中的所有元素到此列表的结尾,顺序是指定 collection 的迭代器返回这些内元素的顺容序(可选操作)。
多执行几次就实现了你的功能
6. C# list分成n个list
最简单的办法就是遍历res:
首先声明一个容器来存储分好份的list
var container = new List<List<KeyValuePair<String, float>>>();
for(int i = 0 ; i<(内res.count%12 ==0?res.count/12 :res.count/12 +1); i ++) //循环
//如果res的元素个数无法被容12整除,最后再多出一个list存放
{
var new_list = new List<KeyValuePair<String, float>>();
for(int j =0;j<12;j++)
{
int index = i*12 + j; //计数器
if(index>res.Count) {continue;}
new_list.Add(res[index]);
}
container.Add(new_list);
}
res有100个元素时,测试分组输出为9组,0-7组为12个元素,8组为4个元素。
7. Arraylist拆分成多个list
主要看是根据什么条件判断,如果是根据name,就判断,如果下一个名称和上一个名称不同,则记录该条的下标,然后循环判断,重新赋值
8. java 怎样合并两个list
List接口中,有一个方法addAll,可以实现合并list。
List<String> a=new ArrayList<String>();
List<String> b=new ArrayList<String>();
b.addAll(a);
合并出来的List就是b,而不是一个新的专List .
如果属创建新的可以:
ArrayList <String> c=(ArrayList <String> )a.clone;
c.addAll(b);
9. 一个list的值为[1,1,1,2,2,2,1,2,1,3],如何将该list分为3个list
首先你是用怎么个复制法~其次你是用什么判断?这都有影响的~假如你用循环复制每个里面的值,然后你判断的是内容~他们就是同一个假如你用list1 = list2 ,这样复制,那你如果判断他们引用和内容 ~都是同一个
10. C#怎么将List拆分成多个子集合
个人使用中的实例如下:
#region 新方法
List<List<hourhistoryrecorditem>> listGroup = new List<List<hourhistoryrecorditem>>();
int j = 500000;
for (int i = 0; i < lstVals.Count; i += 500000)//以50万为一组分组
{
List<hourhistoryrecorditem> cList = new List<hourhistoryrecorditem>();
cList = lstVals.Take(j).Skip(i).ToList();
j += 500000;
listGroup.Add(cList);
}
for (int i = 0; i < listGroup.Count; i++)
{
List<hourhistoryrecorditem> list = new List<hourhistoryrecorditem>();
list = listGroup[i];
foreach (hourhistoryrecorditem aItem in list)
{
int iOffset = 0;
DataRow r = dt.NewRow();
r[iOffset++] = DBNull.Value;
r[iOffset++] = aItem.CurValue;
r[iOffset++] = aItem.MaxValue_;