python 列表推导式 题二

补写list3被涂改的内容

结果如下:

1 list1 = ["1.Just do it", "2.一切皆有可能", "3.让编程改变世界", "Impossible is Nothing"]
2 list2 = ["4.阿迪达斯", "2.李宁", "3.python", "1.耐克"]
3 list3 = [name + ":" + slogan[2:] for slogan in list1 for name in list2  if slogan[0]==name[0]]
4
5 print(list3)
6 for each in list3:
7     print(each)

列表推导式还原如下:

 1 list1 = ["1.Just do it", "2.一切皆有可能", "3.让编程改变世界", "Impossible is Nothing"]
 2 list2 = ["4.阿迪达斯", "2.李宁", "3.python", "1.耐克"]
 3 for slogan in list1:
 4                                 #遍历list1内容 获取口号slogan
 5     for name in list2:
 6                                 #遍历list2内容 获取品牌name
 7         if name[0] == slogan[0]:
 8                                 #如果name里下标0的字符与slogan里下标0的字符相同
 9             list3 = name + ":" + slogan[2:]
10                                 #进行加法和切片
11             print(list3)

原文地址:https://www.cnblogs.com/98ZHANG/p/11385563.html

时间: 2024-10-06 07:55:20

python 列表推导式 题二的相关文章

python(列表推导式和生成器表达式)

从母鸡下蛋的故事讲起 1 老母鸡 = ('鸡蛋%s'%i for i in range(10)) 2 print(老母鸡) 3 for 蛋 in 老母鸡: 4 print(蛋) 5 g = (i*i for i in range(10)) 6 for i in g: 7 print(i) ①把列表解析的[]换成()得到的就是生成器表达式 ②列表解析与生成器表达式都是一种便利的编程方式,只不过生成器表达式更加节省内存空间 ③Python不但使用迭代器协议,让for循环变得更加通用.大部分内置函数,

python 列表推导式----轻量级循环

列表推导式(list comprehension)是利用其他列表创建新列表(类似于数学术语中的集合推导式)的一种方法.它的工作方式类似于for循环,也很简单: In [39]: [x*x for x in range(10)]Out[39]: [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 如果只想打印出那些能被3整除的平方数,只需要通过添加一个if部分在推导式中就可以完成: In [41]: [x*x for x in xrange(10) if x % 3 == 0

python列表推导式中使用if-else

今天在处理自动化邮件数据时碰到数据行中包含字符串后,从hive中拿到的整数型数据自动转化成了浮点数,严重影响美观性.因此想到了用列表推导式来做转化,将其中的数字型数据全部转化为整型,而字符型数据保留原样. 列表推导式总共有两种形式: ①[x for x in data if condition] 此处if主要起条件判断作用,data数据中只有满足if条件的才会被留下,最后统一生成为一个数据列表 ②[exp1 if condition else exp2 for x in data] 此处if..

python 列表推导式

squares = [x**2 for x in range(10)] 相当于squares = map(lambda x: x**2, range(10)),但是更简洁和易读.傻逼才会用最古老的for循环方法去做这样的事情. 列表推导式由括号括起来, 括号里面包含一个表达式, 表达式后面跟着一个for语句, 后面还可以接零个或更多的for或if语句. 结果是一个新的列表, 由表达式依据其后面的for和if子句上下文计算而来的结果构成. 例如, 下面的 listcomp 组合两个列表中不相等的元

python列表推导式

1.形式 [表达式 for 变量 in 列表]    或者  [表达式 for 变量 in 列表 if 条件] 2.demo #!/usr/bin/python # -*- coding: utf-8 -*- li = [1,2,3,4,5,6,7,8,9] print [x**2 for x in li] print [x**2 for x in li if x>5] print dict([(x,x*10) for x in li]) print  [ (x, y) for x in ran

使用python列表推导式进行99乘法表

首先这很python for i in range(1, 10): print(" ".join(["%d*%d=%d" % (j, i, i*j) for j in range(1, i+1)])) 详解 for i in range(1, 10): #当i == 1时: print(" ".join(["%d*%d=%d" % (j, i, i*j) for j in range(1, i+1)])) a ["%

python的各种推导式(列表推导式、字典推导式、集合推导式)

推导式comprehensions(又称解析式),是Python的一种独有特性.推导式是可以从一个数据序列构建另一个新的数据序列的结构体. 共有三种推导,在Python2和3中都有支持: 列表(list)推导式 字典(dict)推导式 集合(set)推导式 一.列表推导式 1.使用[]生成list 基本格式 variable = [out_exp_res for out_exp in input_list if out_exp == 2] out_exp_res: 列表生成元素表达式,可以是有返

Python的高级特性2:列表推导式和生成器

一.列表推导式 1.列表推导式是颇具python风格的一种写法.这种写法除了高效,也更简短. In [23]: ['i:el' for i,el in enumerate(["one","two","three"])] Out[23]: ['i:el', 'i:el', 'i:el'] enumerate是内建函数,可以让列表获得“下标”的属性.而如果不用列表推导式,上例需要这么写 In [24]: lst = ["one",

python学习笔记(八)函数return多个值,列表推导式和交换两个变量的值

函数return多个值: 补充知识点:写代码得到时候少用全局变量: 1.不安全 2.会一直占着内存不释放 函数多个return值,那么会把这几个return的值都放在一个元组里面,然后返回 1 def hello(a,b,c,d): 2 return a,b,c,d 3 res=hello('ybq','ede','rfv','deq') 4 print(res)#('ybq', 'ede', 'dede', 'deq') 列表推导式: 1 #列表推导式 2 nums=[0,1,3,4,5,6,