Elastcio 发表于 2017-11-22 19:46:05

mylist =
target = 9

def fun(mylist, target):
    result = []
    for each in mylist:
      mylist.remove(each)
      for each2 in mylist:
            if each + each2 == target:
                result.append()
                mylist.remove(each2)
    return result


if __name__ == "__main__":
    result = fun(mylist, target)
    print(result) #[, [-3, 12], ]

python_techlog 发表于 2017-11-23 11:13:23

def fun(mylist,target):
    slist = []
    for i in range(len(mylist)):
      for j in range(i+1,len(mylist)):
            if mylist + mylist == target:
                slist.append (,mylist])
      
    return slist

21312qsad 发表于 2017-11-23 14:43:30

def sss(a):
    for i in a:
         s=[]
         for d in a:
             if i+d==9:
                s.append(i)
                s.append(d)
                yield (s)

a=
l=list(sss(a))
print(l)
x=[]
for i in l:
    i.sort()
print(l)
s=[]
for i in l:
    if i not in s:
      s.append(i)
print(s)

Python玲玲 发表于 2017-11-23 18:53:49

def fun(mylist,target):
    list1 = []
    for i in mylist:
      a = target - i
      if a in mylist:
            lst =
            list1.append(lst)
            mylist.remove(a)
    print(list1)

编程新血 发表于 2017-11-25 09:29:40

import itertools
l=

def fun(mylist, target):
    import itertools
    r=[]
    list1=itertools.combinations(mylist,2)
    for i in list1:
      if i+i==target:
            r.append(list(i))
    if len(r)==1:
      return r
    return r

print(fun(l,9))

铁棍阿童木 发表于 2017-11-25 20:50:09

本帖最后由 铁棍阿童木 于 2017-11-25 20:52 编辑

# 首先定义列表
mylist =


# 由用户自行输入目标数值
while True:
    try:
      target = int(input("请输入目标数值:"))
      break
    except TypeError:
      print("输入错误,必须输入整数!")


def fun(mylist, target):

    # 创建空列表,用来存放符合条件的元素组成的二级列表
    obj_list = []

    # 创建空列表,用来存放已经计算过的数值
    repeat = []

    # 获得列表长度范围,启动for循环进行比对计算
    list_len = len(mylist)
    for x in range(list_len):

      # 如果两数的差在mylist列表,
      # 如果两数的差不在repeat列表,同时两数的差不等于自身,则执行添加操作
      if (target - mylist) in mylist:
            if (target - mylist) not in repeat and (
                target - mylist) != mylist:
                temp_list = list((mylist,(target - mylist)))
                obj_list.append(temp_list)
            repeat.append(mylist)
    return obj_list

wc365 发表于 2017-11-26 00:09:11

def fun(mylist,target):
    list_result = []
    for i in mylist:
      for j in mylist:
            if i+j == target:
                list_result.append()
    return list_result

Q爸爸 发表于 2017-11-27 15:58:39

def fun(mylist,target):
    result = []
    mylist.sort()
    high = target - mylist
    list1 = mylist[:mylist.index(high)+1]
    len1 = 0
    len2 = -1
    whilelist1-list1:
      if target-list1==list1:
            result.append(,list1])
            len1 += 1
            len2 -= 1
            continue
      elif target-list1 > list1:
            len1 += 1
            continue
      elif target-list1 < list1:
            len2 -= 1
            continue
    if len(result) == 1:
      return result
    else : return result

776667 发表于 2017-11-27 16:37:26

def fun(mylist,target):
    result_list = []
    for x in mylist:
      for y in mylist:
            if x + y == target and x != y and sorted() not in result_list:
                result_list.append(sorted())
    return result_list

shigure_takimi 发表于 2017-11-27 16:40:02

本帖最后由 shigure_takimi 于 2017-11-27 17:30 编辑

做出来有重复,删了重做。

sunnychou 发表于 2017-11-28 09:32:54

本帖最后由 sunnychou 于 2017-11-28 09:36 编辑

def fun(mylist, target):
    c = []
    if mylist == []:
      return []
    for i in mylist:
      if (target - i) in mylist:
            c.append()
            mylist.remove(i)
            mylist.remove(target - i)
    if len(c) == 2:
      return c
    else:
      return c

   
mylist =
print(fun(mylist, 9))

sunnychou 发表于 2017-11-28 09:42:59

def fun(mylist, target):
    c = []
    if mylist == []:
      return []
    for i in mylist:
      if (target - i) in mylist:
            c.append()
            mylist.remove(i)
            mylist.remove(target - i)
    if len(c) == 1:
      return c
    else:
      return c

shigure_takimi 发表于 2017-11-28 11:01:52

def fun(mylist,target):
    listForCheck = []
    listForReturn = []
    for i in mylist:
      mylist.remove(i)
      if target - i in mylist and i not in listForCheck and target - i not in listForCheck:
            listForReturn.append()
      listForCheck.append(i)
      listForCheck.append(target - i)
    return listForReturn
print(fun(,9))

PYTHON90小菜鸟 发表于 2017-12-29 09:55:06

def fun(mylist,target):
    temps={}
    for i in range(len(mylist)-1):
      for j in range(i+1,len(mylist)):
            if (mylist+mylist)==target:
                dict_0={mylist:mylist}
                temps.update(dict_0)
    temps=list(temps.items())
    for m in range(len(temps)):
      temps=list(temps)
    return temps


mylist=
target=9
result=fun(mylist,target)
print(result)

graceasyi 发表于 2018-1-17 17:33:11

def fun(mylist, target):
    out = []
    for i in range(len(mylist)):
      for j in range(i + 1, len(list1)):
            if mylist + mylist == target:
                out.append(, mylist])
    return out

list1 =
goal = 9
print(fun(list1, goal))

塔利班 发表于 2018-2-9 22:34:20

def find(list,tar):
    L=[]
    for i in list:
      for j in list:
            if i<j and i+j==tar:
               L.append()
    return L
tar=9
a=
print(find(a,tar))

新手潘包邮 发表于 2018-5-6 08:50:02

solomonxian 发表于 2017-11-20 20:53
两两组合,没有重复的列表···故意的嘛

手动做的话,嵌套循环是笛卡尔积,


自己加自己是没有想到的

新手潘包邮 发表于 2018-5-6 09:01:30

def fun(mylist, target):
    outlist = []
    for each in mylist:
      if target - each in mylist:
            outlist.append()
            mylist.remove(each)
            mylist.remove(target - each)
    return outlist
fun(, 9)

咕咕鸡鸽鸽 发表于 2019-3-18 20:26:57

from itertools import permutations as per

def fun126(list1,tar):
    return list(set())

list1 =
print(fun126(list1,9))
   

永恒的蓝色梦想 发表于 2019-8-18 13:07:18

不很符合要求,返回的是元素为元组的集合,而且即使只有一个也会返回集合内元组的形式……def func(lis,num):return {tuple(sorted((i,j)))for i in lis for j in lis if i+j==num and i!=j}func(,9)#{(2, 7), (-3, 12), (4, 5)}
页: 1 [2] 3
查看完整版本: Python:每日一题 126