天涯论坛

 找回密码
 立即注册
搜索
查看: 36|回复: 0

Python能做的5件有趣的事情,这些操作你都会吗?

[复制链接]

3123

主题

3万

回帖

9910万

积分

论坛元老

Rank: 8Rank: 8

积分
99108625
发表于 2024-8-18 11:12:00 | 显示全部楼层 |阅读模式

此刻Python越来越受程序员欢迎了,程序员用Python能够那些有趣的事情呢?

下面w3cschool就给小伙伴们介绍一下Python编程的5件趣事:

0.for-else用法

循环正常结束则执行else语句。通常用于循环找符合要求的元素,倘若找到则break调出循环,不会触发else;倘若找到(完整运行循环)则print not found

1.or的用法

python中x or y暗示倘若x为真便是x的值,否则为y的值

咱们会经常看到类似这般的用法(例如函数的一个value参数设置默认值,这般运用准许它不赋值)

value = value or {}

# 相当于

value = value if value else {}

2.and的用法

python中x and y暗示倘若x是假,结果便是x的值,否则便是y的值

x and y and z多个and连接时,倘若全是真结果便是最后一个的值;倘若中间有假的值,结果便是第1个假的值

举一个例子

def not_empty(a):

return a and a.strip()

not_empty( a )

# 值为 a

not_empty(None)

# 不会报错(倘若 return a.strip() 就会报错)

# 在处理None的问题上相当于

def not_empty(a):

if a is None:

return None

else:

return a.strip()

细细品味and和or的差别,她们规律类似,然则实现的功能是不能够相互替代的

or 是结果倘若不满意有个善后工作

and是要做一件事之前先检验一下,不可做就不让它做。

3.单行if-else

a = 1

b = 3 if a == 1 else 2

print(it is one if a == 1 else no)

4.迭代器传入函数中不消加括号

# 通常这般

a = (i for i in range(10))

sum(a)

# 咱们能够这般

sum((i for i in range(10)))

# 但咱们能够这般

sum(i for i in range(10))

# 类似的有

.join(str(i) for i in range(10))

python有趣的解包用法

python中的解包能够这般理解:一个list是一个整体,想把list中每一个元素当成一个个个体剥离出来,这个过程便是解包,咱们来看下面这些例子。

1.将list中每一个元素赋值给一个变量

>>> name, age, date = [Bob, 20, 2018-1-1]

>>> name

Bob

>>> age

20

>>> date

2018-1-1

2.可迭代对象都能够这般

# 列表

>>> a,b,c = [a, b, c]

>>> a

a

>>> a,b,c = enumerate([a, b, c])

>>> a

(0, a)

# 元组

>>> a,b,c = (a, b, c)

>>> a

a

# 字典

>>> a,b,c = {a:1, b:2, c:3}

>>> a

a

>>> a,b,c = {a:1, b:2, c:3}.items()

>>> a

(a, 1)

# 字符串

>>> a,b,c = abc

>>> a

a

# 生成器

>>> a,b,c = (x + 1 for x in range(3))

>>> a

1

倘若可迭代对象包括的元素和前面待赋值变量数量不一致,则会报错。然则能够经过*来暗示多个元素

3.星号的运用

例如咱们要计算平均分,去除最高分和最低分,除了用切片,还能够用解包的方式得到中间的数值

>>> first, *new, last = [94, 85, 73, 46]

>>> new

[85, 73]

用*来暗示多个数值

你用python做过什么有趣的事情?





上一篇:GTA5 Mod 安装教程
下一篇:Python语言入门(1)-python语言里有哪些东西
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

站点统计|Archiver|手机版|小黑屋|天涯论坛 ( 非经营性网站 )|网站地图

GMT+8, 2024-11-23 00:45 , Processed in 0.104090 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.