我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python处理变量交换与字符串及判断的小妙招

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python处理变量交换与字符串及判断的小妙招

两变量交换

语法:


a, b = b, a

IPython测试


In [1]: a = 3

In [2]: b = 5

In [3]: a, b = b, a

In [4]: a
Out[4]: 5

In [5]: b
Out[5]: 3

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

重复字符串


In [2]: 'love ' * 2
Out[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]: s
Out[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 = False

In [23]: if a:
    ...:     print('进不来')
    ...: else:
    ...:     print('空值')
    ...:
空值

In [24]: a = None

In [25]: if a:
    ...:     print('进不来')
    ...: else:
    ...:     print('空值')
    ...:
空值

In [26]: a = 0

In [27]: if a:
    ...:     print('进不来')
    ...: else:
    ...:     print('空值')
    ...:
空值

In [28]: a = []

In [29]: if a:
    ...:     print('进不来')
    ...: else:
    ...:     print('空值')
    ...:
空值

多值一起判断

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


In [30]: a = 1

In [31]: b = ''

In [32]: c = True

In [33]: all([a, b, c])
Out[33]: False

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

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


In [54]: li
Out[54]: [True, True, True, True]

In [55]: all(li)
Out[55]: True

In [56]: any(li)
Out[56]: True    

all() 验证


# all 只要有一个是空值就False
In [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 全部非空才 True
In [76]: li
Out[76]: ['python', 3.14, [1, 2], True]

In [77]: all(li)
Out[77]: True

any() 验证


# 所有元素为空则 False
In [82]: any([False, False, False, False])
Out[82]: False

In [83]: any([False, '', [], 0, None])
Out[83]: False
    
# any 只要有一个非空就为 True
In [86]: any([True, '', [], 0, None])
Out[86]: True

In [87]: any([False, '123', [], 0, None])
Out[87]: True

In [88]: any([False, '', [1, 2], 0, None])
Out[88]: True

In [89]: any([False, '', [], 1, None])
Out[89]: True

尾语

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

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

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

到此这篇关于python处理变量交换与字符串及判断的小妙招的文章就介绍到这了,更多相关python 变量交换内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python处理变量交换与字符串及判断的小妙招

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录