网站首页 > 基础教程 正文
前言 过年也没完全闲着,每天用一点点时间学点东西,本文为大家介绍几个python操作的细节,包含all、any、for in等操作,以及介绍我解决问题的思路。
一、开篇 先从我看到的一个简单的语句开始。
刚看到这个语句的时候我整个人完全懵住了,完全看不懂这是干啥的。不过其实编程难的不是这些东西,这些东西再也不怕,也能想办法解决掉,而隐藏在这后面的编程思维及数学等知识是很难解决的。
1.1 any、all 言归正传,看到这个语句后,我想到的就是如何将复杂的问题简单化。
于是我先查了一下any函数,查到any和all函数都是对于集合而言的。
描述 any() 函数用于判断给定的可迭代参数 iterable 是否全部为空对象,如果都为空、0、false,则返回 False,如果不都为空、0、false,则返回 True。
函数等价于:
语法
以下是 all() 方法的语法:
all(iterable)
参数
iterable -- 元组或列表。
返回值
如果iterable的所有元素不为0、’’、False或者iterable为空,all(iterable)返回True,否则返回False;
注意:空元组、空列表返回值为True,这里要特别注意。
简单点说,any函数用于判断给定的可迭代参数iterable是否全部为空对象,如果都为空、0、false中的一种(以下简称为空),则返回False,如果不都为空,则返回True;而all函数刚好相反,如果全不为空,则返回True,否则返回False。
1.2 for in
这就是说上面的语句any里面是一个iterable对象。我们再来看一下里面的语句:
for 循环语句
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法:
for循环的语法格式如下:
流程图:
可以明显的看到一个for,for in在python里面很明显,简单的说就是循环一个集合,并对此集合进行过滤、计算等操作。同样先简化它:
这很明显,生成的集合与原来相同,但是平常我们看到的都是这样的:
这里面就牵涉到python生成器的概念。
1.3 生成器
生成器的优点在于不需要事先计算,只需要在需要的时候才会调用,不浪费存储空间和计算时间。简单的说生成器是一种特殊的集合,这种集合并不像普通的集合一样事先全部算出,而是在需要的时候才去计算。其实实现方式很简单,将[]换成()即可,于是就有了上面的语句。关于生成器的其他操作和生成方式可以在网上查阅相关资料,这里不再赘述。
1.4 继续for in
接着上面的for in继续介绍,(word for word in [“拍照”, “拍张照”])结果与原始数据相同,那么如果我们想要产生一点变化就要对第一个word执行一个函数,于是就有了word in text,这里的in就是个函数,判断word是否是在text中,即word是否是text的子串,相当于其他语言的contain。
这样就很清楚了,(word in text for word in [“拍照”, “拍张照”])表示循环原始集合,判断每个元素是否是给定的text字符串的子串,返回的是个True、False集合。
当然我们也可以在循环的时候实现过滤,看如下语句:
貌似这条语句跟上面的差别就在于word in text的位置发生了变化,并多了个if。其实二者差别非常大,这里实现的功能是判断word是否是text的子串,如果是则取出,相当于过滤掉不是子串的对象,最终返回的是一个字符串集合。
1.5 总体 那么这里我们再来看一下最开始的语句:
综合以上语句就可以知道此语句实现的是循环集合判断每一个字符串是否是给定的text的子串,最终如果不全为空的话就返回True,即text只要包含集合中的任意一个字符串,则返回True。可以用于命令检测等等场合。
二、总结
本文通过一个稍微复杂的语句,为大家介绍了python中几个常用的函数和概念,并分析了由繁而简的过程。
猜你喜欢
- 2024-11-15 Python可接受任意数量参数的函数(编写函数,可以接收任意多个整数python)
- 2024-11-15 Python中10个最容易被忽略的内建函数
- 2024-11-15 Python 数据分析——NumPy ufunc函数
- 2024-11-15 应该早点了解 Python 中的 5 件事
- 2024-11-15 「Python基础知识」Python中常用的内建函数有哪些
- 2024-11-15 Python中高级函数及其用法(python3高级用法)
- 2024-11-15 python 自学 函数2(python函数详解)
- 2024-11-15 Python3入门——内置函数一(python内置函数怎么用)
- 2024-11-15 福利来了!68个Python内置函数最全总结,建议收藏
- 2024-11-15 Python 函数式编程(python编写程序函数)
- 06-18单例模式谁都会,破坏单例模式听说过吗?
- 06-18Objective-c单例模式的正确写法「藏」
- 06-18单例模式介绍(单例模式都有哪些)
- 06-18前端设计-单例模式在实战中的应用技巧
- 06-18PHP之单例模式(php单例模式连接数据库)
- 06-18设计模式:单例模式及C及C++实现示例
- 06-18python的单例模式(单例 python)
- 06-18你认为最简单的单例模式,东西还挺多
- 最近发表
- 标签列表
-
- jsp (69)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- pythonif (86)
- location.href (69)
- dockerexec (65)
- tail-f (79)
- queryselectorall (63)
- location.search (79)
- bootstrap教程 (74)
- 单例 (62)
- linuxgzip (68)
- 字符串连接 (73)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)