当前位置: 首页 > news >正文

义乌建网站网站建设做什么好

义乌建网站,网站建设做什么好,网站建设毕业设计模板,门户网站建设注意问题Python高级语 1 列表推导式1.1 什么是列表推导式1.2 列表推导式的使用 2 字典推导式2.1 什么是字典推导式2.2 字典推导式的使用 3 元组推导式4 集合推导式5 三元表达式5.1 什么是三元表达式5.2 三元表达式的使用 1 列表推导式 1.1 什么是列表推导式 列表推导式的英文&#xf…

Python高级语

  • 1 列表推导式
    • 1.1 什么是列表推导式
    • 1.2 列表推导式的使用
  • 2 字典推导式
    • 2.1 什么是字典推导式
    • 2.2 字典推导式的使用
  • 3 元组推导式
  • 4 集合推导式
  • 5 三元表达式
    • 5.1 什么是三元表达式
    • 5.2 三元表达式的使用

1 列表推导式

1.1 什么是列表推导式

列表推导式的英文(list cmprehension)是Python独有的一种语法结构,它将推导式(又称解析式)得到的各个结果组成一个新个列表,是一种非常简洁的创建列表的语法,适用于所有需要列表的场景。语法格式如下:

[表达式 for 迭代变量 in 可迭代对象 [if 条件表达式]]

1.2 列表推导式的使用

  • 优化简单for循环

for 循环代码

>>> list_1 = ['a', 'b', 'c']
>>> list_2 = []
>>> for i in list_1:
>>>     list_2.append(i * 2)>>> print(list_2)
['aa', 'bb', 'cc']

列表推导式写法

>>> list_1 = ['a', 'b', 'c']
>>> list_2 = [i * 2 for i in list_1]
>>> print(list_2)
['aa', 'bb', 'cc']# 若不想取list_1列表中的全部元素,可用if语句做过滤条件,可迭代变量也可用于if语句中
>>> list_2 = [i * 2 for i in list_1 if i != 'b']
>>> print(list_2)
['aa', 'cc']
  • 优化两层for循环
>>> list_1 = [(m, n) for m in range(3) for n in range(3)]
>>> print(list_1)
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]

多层for循环一样支持if语句

>>> list_1 = [(m, n) for m in range(3) if m > 1 for n in range(3) if n > 1]
>>> print(list_1)
[(2, 2)]
>>> list_1 = [(m, n) for m in range(3) if m > 1 for n in range(3)]
>>> print(list_1)
[(2, 0), (2, 1), (2, 2)]
>>> list_1 = [(m, n) for m in range(3) for n in range(3) if m > 1 and n > 1]
>>> print(list_1)
[(2, 2)]
  • 列表推导式支持嵌套
>>> list_1 = [n + 2 for n in [m + 1 for m in range(3)]]
>>> print(list_1)
[3, 4, 5]

2 字典推导式

2.1 什么是字典推导式

字典推导式的概念与列表推导式一样,只不过返回的结果是字典。语法格式如下:

{键:值 for 迭代变量 in 可迭代对象 [if 条件表达式]}

2.2 字典推导式的使用

注意:字典中不能出现同名的 key,第二次出现就把第一个值覆盖掉了,因此 value 都是 1

>>> dict_1 = {key: value for key in range(3) for value in range(2)}
>>> print(dict_1)
{0: 1, 1: 1, 2: 1}
>>> dict_1 = {key: value for key in range(3) for value in range(3)}
>>> print(dict_1)
{0: 2, 1: 2, 2: 2}

常用场景,遍历一个具有键值关系的可迭代对象

>>> tuple_list = [('name', '张三'), ('age', 28),('class', '9701'), ('like', 'python')]
>>> dict_1 = {key: value for key, value in tuple_list}
>>> print(dict_1)
{'name': '张三', 'age': 28, 'class': '9701', 'like': 'python'}

3 元组推导式

与列表和字典推导式不同的是它不是返回一个元组,而是返回一个生成器对象,也可以叫生成器推导式,示例如下:

>>> tuple_1 = (i for i in range(5))
>>> print(tuple_1)
<generator object <genexpr> at 0x000002097F25F1D0>

并没有像我们想像的那样返回(0, 1, 2, 3, 4)这样的元组,若需返回元组加上转换函数即可:

>>> tuple_1 = (i for i in range(5))
>>> print(tuple(tuple_1))
(0, 1, 2, 3, 4)

4 集合推导式

集合推导式需要注意的是,集合是无序的,在使用时会自动去掉重复的元素。

>>> set_1 = {i for i in 'HelloWorld'}
>>> print(set_1)
{'d', 'W', 'e', 'r', 'o', 'H', 'l'}

5 三元表达式

5.1 什么是三元表达式

Python中没有像C或Java语言中的三元表达式(三目运算符)的概念,但也有类似的语法,格式如下:

if条件为True执行语句 if 条件表达式 else if条件为False执行语句

5.2 三元表达式的使用

  • 简化 if 语句
# 原 if 语句
age = 30
if age >= 18 :rs = "成年"
else:rs = "未成年"# 使用三元表达式
age = 30
rs = "成年" if age >= 18 else "未成年"
  • 返回多个语句
age = 30
rs = "成年", "大于18岁" if age >= 18 else "未成年"
print(rs)
  • 在函数中使用三元表达式
def e_num(num):return True if num % 2 == 0 else False
  • 三元表达式与 lambda一起使用
# 返回两个数的最大值
>>> max = lambda a, b: a if a > b else b
>>> print(max(10, 15))
15
>>> print(max(88, 15))
88
http://www.yayakq.cn/news/697086/

相关文章:

  • 免费建网站样板手机版晋城市公用事业建设局网站
  • 做设计太依赖网站素材建设网站 xp
  • 做网站优化的公司猪八戒网做网站被骗
  • 南京江宁做网站在线ui设计
  • 怎样做好网站建设设计ppt模板网站大全
  • 公司网站设计好企业网站建设实训指导书
  • 北京城乡建设网站首页设计师工作室
  • 生成拼贴的网站php网站开发几技术难点
  • 航佳网站建设上海app定制
  • 模特网站模板asp.net 发布网站 ftp
  • 国内个人网站建设引流平台有哪些
  • 免费企业网站开发超越时空网上书城网站建设方案
  • 昌邑建设局网站北京做网站youyi51
  • 邯郸企业建站佛山网站建设网站建设
  • 微信网站开发的代码数据库支持的网站怎么做
  • 怎样做视频网站淘宝现在不能发布网站建设
  • 昆山品牌网站建设张店学校网站建设方案
  • 麻将app软件开发价格怎么做外贸网站优化
  • 赫章网站建设网站建设zgkr
  • 不用下载能直接进入的正能量网站中国设计师协会
  • php网站开发总结广西专业网站建设
  • 站长工具seo综合查询排名工业产品设计网
  • 公司网站建设费计入哪个科目商城网站流量
  • wordpress怎么自定义sem优化托管公司
  • 为什么网站不需要icp备案上海模板建站源码
  • 关于建设网站的经费请示平江外贸网站推广找哪家
  • 建设网银怎么提高转账限额包年seo和整站优化
  • 天津整站网站后台更新文章 前台不显示
  • 网站建设销售是什么成都平台网站开发公司
  • 网站正在建设中的专业北京网站建设公司排名