【小白学编程Python方向】项目练习第2期(截止4.4)

    
Python项目练习 第2期
练习时间:3月21日-4月4日(2周)
活动规则:
  • 每一期一个项目,届时会开新帖发布
  • 学员直接将答案提交到该贴评论区即可
  • 两周后,公布导师参考答案
  • 导师评选出当期最佳代码(将设置为精彩回复

奖励:牛客大礼包一份(牛客定制水杯 牛客定制笔 牛客定制程序员徽章 滑稽抱枕)

参与方式:直接将你的代码回复到本帖评论区

-----------------------------------------------------

本期题目:

请将[1, 2, 3, 4, 5, 6, 7, 8, 9]这9个数字通过某种方式得到123456789


要求:
请使用三种方式:
1、字符串拼接
2、循环
3、Python内建的高阶函数

参与方式:直接将你的代码回复到本帖评论区

#Python#
全部评论
l=[1,2,3,4,5,6,7,8,9] #1 p="" for i in l: p+=str(i) print(p) #2 p=0 for i in l: p=10*p+i print(p) #3 #这个要求好,py很强大,很美 print(''.join(list(map(str,l)))) #map函数,接收一个函数和一个列表,将函数作用于每一个元素,返回Iterator,所以用list函数转换类型 #join函数,以左边""内字符为分隔,接受一个列表,将列表元素拼成一个字符串 #reduce也可以,将作用过的结果保留,继续用来下一次操作,但是本人认为map更爽。
点赞 回复 分享
发布于 2018-03-21 18:48
res=[1, 2, 3, 4, 5, 6, 7, 8, 9] print(''.join(list(map(str,res)))) ############################# res=[1, 2, 3, 4, 5, 6, 7, 8, 9] rel='' for v in res:     rel+=str(v) print(rel) ############################# from functools import reduce res=[1, 2, 3, 4, 5, 6, 7, 8, 9] print(reduce(lambda x,y:str(x)+str(y),res))
点赞 回复 分享
发布于 2018-03-21 18:39
1 字符串拼接 l=[1,2,3,4,5,6,7,8,9] str1='' for i in range (0,9):     a=str(l[i])     str1=str1+a print(str1) 2 循环 L=[1,2,3,4,5,6,7,8,9] a=1 for i in range(1,9):     a=a*10+L[i] print(a) 3 python內建的高阶函数 join list=[1,2,3,4,5,6,7,8,9] l=[] for i in range (0,9):     l.append(str(list[i])) print(''.join(l))
点赞 回复 分享
发布于 2018-03-21 14:21
L=[1, 2, 3, 4, 5, 6, 7, 8, 9] def strcat(L):     a=[str(i) for i in L]         a="".join(a)     return a def loop(L):     a=""     for x in L:         a+=str(x)     return a from functools import reduce def adfun(L):     return reduce(lambda x,y:x+y,map(str,L))      a=strcat(L) b=loop(L) c=adfun(L)
点赞 回复 分享
发布于 2018-03-21 14:40
问下楼上是怎么回复图片的啊。
点赞 回复 分享
发布于 2018-03-21 20:40
  list=[1, 2, 3, 4, 5, 6, 7, 8, 9] #1、字符串拼接 print(''.join(list)) #2、循环 for i in list print(i) #高阶函数 print(''.join(list(map(str,list))))
点赞 回复 分享
发布于 2018-03-24 11:25
#!/usr/bin/env python3 # -*- coding: utf-8 -*- from functools import reduce list=[1,2,3,4,5,6,7,8,9] #字符串拼接 def fn1(list): s='' for i in list: s+=str(i) return s #循环 def fn2(list): sum=0 for i in list: sum=sum*10+i return sum #内建高阶函数 def fn3(list): m=reduce(lambda x,y:10*x+y,list) return m print(fn1(list)) print(fn2(list)) print(fn3(list))
点赞 回复 分享
发布于 2018-03-28 19:44
def str1(list1):     c="".join(map(str,list1))     return c     a=[1, 2, 3, 4, 5, 6, 7, 8, 9] print(str1(a)) #方法二 def str2(list2):     d=0     for i in list2:         d=d*10+i     return d a=[1, 2, 3, 4, 5, 6, 7, 8, 9] print(str2(a)) #方法三:高阶函数 from functools import reduce def Change_list(list):     def fn(x,y):         return x*10+y         return reduce(fn,list) a=[1, 2, 3, 4, 5, 6, 7, 8, 9] print(Change_list(a))    
点赞 回复 分享
发布于 2018-03-29 16:31
作者:羽林尉链接:https://www.nowcoder.com/discuss/69725?type=1&order=0&pos=30&page=1来源:牛客网 M = [i for i in range(1,10)] ''' 方法一:字符串拼接 '''f = '' f = f.join(str(x) x for x in M)print('f = ',f, type(f)) ''' 方法二:循环 '''for index, m in enumerate(M): if index == 0 : s = m else: s = s * 10 + mprint('s = ', s, type(s)) ''' 方法三:Python内建的高阶函数 '''t = reduce(lambda x, y: x * 10 + y, M)print('t = ', t, type(t))
点赞 回复 分享
发布于 2018-03-30 14:43
from functools import reduce # method one:字符串拼接 def method_one(a_list):     num = "".join(map(str,a_list))     return num # method two:循环 def method_two(a_list):     num = 0     for i in a_list:         num = num*10 + int(i)     return num # method three:Python内建的高阶函数 def method_three(a_list):     num = reduce(lambda x,y: str(x) + str(y), a_list)     return num list = [1, 2, 3, 4, 5, 6, 7, 8, 9] print(method_one(list)) print(method_two(list)) print(method_three(list))
点赞 回复 分享
发布于 2018-04-08 11:23
a=[1,2,3,4,5,6,7,8,9] print (a) b = str() for item in a: b = b+str(item) print (b) c = str() for i in range(0,len(a)): c = c+ str(a[i]) print (c) d = ''.join([str(i) for i in a]) print (d)
点赞 回复 分享
发布于 2018-05-02 16:50
l=[1,2,3,4,5,6,7,8,9] t=[] for i in l:     t.append(str(i)) print("".join(t))
点赞 回复 分享
发布于 2018-10-07 14:19

相关推荐

Natrium_:这时间我以为飞机票
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务