资讯专栏INFORMATION COLUMN

Python 常用小妙招(一)

XFLY / 1672人阅读

摘要:本文记录一些日常编程中的小妙招,并使用进行交互测试,让我们更好的了解和学习的一些特性。两变量交换语法测试免去了利用一个临时变量进行过渡交互。相互转换看看各自的能不能排上用场。

本文记录一些 Python 日常编程中的小妙招,并使用 IPython 进行交互测试,让我们更好的了解和学习 Python 的一些特性。


两变量交换

语法:

a, b = b, a

IPython测试

In [1]: a = 3In [2]: b = 5In [3]: a, b = b, aIn [4]: aOut[4]: 5In [5]: bOut[5]: 3

免去了利用一个临时变量进行过渡交互。


重复字符串

In [2]: "love " * 2Out[2]: "love love "    In [7]: for i in range(1, 10):   ...:     print("*" * i)   ...:*********************************************

列表与字符串互相转换

假如有一个列表内容为 ["n", "i", "c", "e"],然后设法变成 字符串nice

字符串 0123456789 转成列表 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

语法:

"".join(["p", "y", "t", "h", "o", "n"])

IPython测试

In [6]: li = ["p", "y", "t", "h", "o", "n"]In [7]: "".join(li)Out[7]: "python" # 字符串转列表    In [11]: s = "0123456789"In [12]: s = list(s)In [13]: sOut[13]: ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]    

相对 for 循环进行拼接是不是简洁有效,字符串可以直接转列表。相互转换看看各自的 api 能不能排上用场。


多情况判空

假如一个变量可能是 "", False, None, 0, [],但都认为这样是 该如何判空呢 ?

语法:

a = ""if a:    print("进不来")else:    print("空值")

IPython测试

In [20]: a = ""In [21]: if a:    ...:     print("进不来")    ...: else:    ...:     print("空值")    ...:空值In [22]: a = FalseIn [23]: if a:    ...:     print("进不来")    ...: else:    ...:     print("空值")    ...:空值In [24]: a = NoneIn [25]: if a:    ...:     print("进不来")    ...: else:    ...:     print("空值")    ...:空值In [26]: a = 0In [27]: if a:    ...:     print("进不来")    ...: else:    ...:     print("空值")    ...:空值In [28]: a = []In [29]: if a:    ...:     print("进不来")    ...: else:    ...:     print("空值")    ...:空值

多值一起判断

同时校验多个参数不是空值或含有空值

In [30]: a = 1In [31]: b = ""In [32]: c = TrueIn [33]: all([a, b, c])Out[33]: FalseIn [34]: any([a, b, c])Out[34]: True
  • all() 是列表中所有元素都不为空为 True,反之只要有一个是 空值False
  • any() 是列表中有一个元素非空即为 True,所有元素为空才 False
  • 注意 空值"", False, None, 0, [],然后就是需要装到一个统一的列表进行 all() , any() 判断

刚好可以验证上面的多情况判空。

In [54]: liOut[54]: [True, True, True, True]In [55]: all(li)Out[55]: TrueIn [56]: any(li)Out[56]: True    

all() 验证

# all 只要有一个是空值就FalseIn [62]: all([False, True, True, True])Out[62]: False    In [66]: all(["", True, True, True])Out[66]: False    In [66]: all([None, True, True, True])Out[66]: False    In [66]: all([True, [], True, True])Out[66]: False       In [66]: all([True, 0, True, True])Out[66]: False           # all 全部非空才 TrueIn [76]: liOut[76]: ["python", 3.14, [1, 2], True]In [77]: all(li)Out[77]: True

any() 验证

# 所有元素为空则 FalseIn [82]: any([False, False, False, False])Out[82]: FalseIn [83]: any([False, "", [], 0, None])Out[83]: False    # any 只要有一个非空就为 TrueIn [86]: any([True, "", [], 0, None])Out[86]: TrueIn [87]: any([False, "123", [], 0, None])Out[87]: TrueIn [88]: any([False, "", [1, 2], 0, None])Out[88]: TrueIn [89]: any([False, "", [], 1, None])Out[89]: True

尾语

✍ 用 Code 谱写世界,让生活更有趣。❤️

✍ 万水千山总是情,点赞再走行不行。❤️

✍ 码字不易,还望各位大侠多多支持。❤️

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/121549.html

相关文章

  • 五个Python命令使用的妙招分享

      小编写这篇文章的主要目的,主要是给大家进行介绍关于Python中的一些案例,介绍Python命令,如何更加高效的去进行使用这些Python命令呢?下面小编就给大家详细介绍下。  平常在使用python命令过程中,基本上都是用来安装python库时才使用到在控制台的python命令。  然而,python命令还有更多的妙用,可能一行命令就能实现一个小工具的实现,还是比较强悍的。  1.网络端口 ...

    89542767 评论0 收藏0
  • 【CSS】妙招,各种问题总结方法处理

    摘要:应用常例是属性设置水平放置后出现间隙。边框产生的位置只有两个地方,在内容内,在内容外,请看下面介绍。产生在内容外,这个好理解,也是我们最普遍见到的,就是在内容外绘制边框。1.实现div文字溢出自动省略号截取   overflow:hidden;  /*超过部分不显示*/        text-overflow:ellipsis;  /*超过部分用点点表示*/     ...

    springDevBird 评论0 收藏0
  • Python对比两种日期两种方式详细说明

      大家应用Python解决日期/时长时,经常遇到这样那样的问题。文中给大家归纳了两种Python对比两种日期方式,所需要的可以了解一下。  以前我们曾介绍过:Python获得某个时间是周几的6种方式!事实上,在咱们应用Python解决日期/时长时,经常遇到这样那样的问题。下面我们就来讨论另外难题,怎样用Python对比两种日期?  datetime  如果需要用Python处理日期和时间,大家肯...

    89542767 评论0 收藏0
  • 监控宝妙招:批量修改告警通知联系人

    摘要:先选择一个监控项目项目进入告警通知设置,选择你需要设置告警方式和联系人,点击应用设置。 1、先选择一个监控项目项目showImg(https://segmentfault.com/img/bVsVB3); 2、进入告警通知设置,选择你需要设置告警方式和联系人,点击应用设置。showImg(https://segmentfault.com/img/bVsVB4); 3、点击批量应用到其他...

    Karrdy 评论0 收藏0

发表评论

0条评论

XFLY

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<