if函数python_关于函数:如何在python中为一个if语句提供多个条件
本问题已经有最佳答案,请猛点这里访问。
所以我在用python 3.1.5编写一些代码,这些代码需要有多个条件才能发生某些事情。例子:
1
2
3
4
5def example(arg1, arg2, arg3):
if arg1 == 1:
if arg2 == 2:
if arg3 == 3:
print("Example Text")
问题是,当我这样做时,如果arg2和arg3不等于0,它就不会打印任何内容。帮助?
埃多克斯1〔0〕怎么样
"问题是,当我这样做的时候,如果arg2和arg3等于0,它就不会打印任何东西。"预期的。这里唯一有效的论点是1,2,3
为什么不是if arg1 == 1 and arg2 == 2 and arg3 == 3:?
罗伯托,我已经试过了,但是奥古尔,我会试试你的。
@Soobacole应该是有效的…我真的不明白为什么,对不起。
你的Ozgur语法不正确。我应该提到我使用忍者术吗?
事实上,罗伯托是你的,我只是打错了,抱歉。
我会用
1
2
3def example(arg1, arg2, arg3):
if arg1 == 1 and arg2 == 2 and arg3 == 3:
print("Example Text")
and运算符与具有相同名称的逻辑门相同;当且仅当所有输入都为1时,它将返回1。如果需要逻辑门,也可以使用or操作符。
编辑:事实上,你文章中提供的代码对我来说很好。我看不出有什么问题。我认为这可能是您的Python的问题,而不是实际的语言。
我的IDE说它没有语法或其他错误,但是当它运行时,它不能正确地输出文本。罗伯托和你的代码(它们是一样的)都工作得很好。
这可能有点奇怪,也可能有点不好,但这是一种解决方法。
1
2
3
4(arg1, arg2, arg3) = (1, 2, 3)
if (arg1 == 1)*(arg2 == 2)*(arg3 == 3):
print('Example.')
乘以0的任何值==0。如果这些条件中的任何一个失败,那么它的计算结果将为假。
为什么你会喜欢这个而不是显而易见的?
假设您传递的是字符串而不是整数,请尝试将参数强制转换为整数:
1
2
3def example(arg1, arg2, arg3):
if int(arg1) == 1 and int(arg2) == 2 and int(arg3) == 3:
print("Example Text")
(编辑强调我不是在要求澄清;我只是想在我的回答中表现得圆滑些。??)
这应该是一个评论。
Darian Moody在他的博客中有一个很好的解决方案:
1
2
3
4
5
6
7
8
9
10a = 1
b = 2
c = True
rules = [a == 1,
b == 2,
c == True]
if all(rules):
print("Success!")
当给定iterable中的所有元素都为真时,all()方法返回True。否则,返回False。
您可以在这里的python文档中关于它的信息,并在这里的信息和示例。
(我也用这里的信息回答了类似的问题——如何在python中为一个if语句提供多个条件)
我参加聚会有点晚了,但我想我会分享一种方法,如果你有相同类型的条件,即检查是否所有、任何或给定数量的a_1=a_2和b_1=b_2,这可以通过以下方式完成:
1
2
3
4
5
6
7
8
9cond_list_1=["1","2","3"]
cond_list_2=["3","2","1"]
nr_conds=1
if len([True for i, j in zip(cond_list_1, cond_list_2) if i == j])>=nr_conds:
print("At least" + str(nr_conds) +" conditions are fullfilled")
if len([True for i, j in zip(cond_list_1, cond_list_2) if i == j])==len(cond_list_1):
print("All conditions are fullfilled")
这意味着你可以在两个初始列表中进行更改,至少对我来说,这样做更容易。
非常冗长和不可读。请参阅上面使用"all"方法的答案,以获得实现此功能的干净方法
是的,但是all语句不允许使用特定数量的条件。让它变得非常简单,完全无用。更不用说你不能在不改变代码的情况下改变列表,同样简单和不灵活。但是谢谢你的意见
请举个例子,因为我看不出你所拥有的和上面的例子所做的有什么区别。两者都可以在运行时改变条件,我认为需要一个临界值的条件,而不是所有条件,这是一个罕见的情况,而不是什么OP要求!要复制"至少一个",请使用any()而不是all()。
两个答案都不能改变条件的数量,它们可以改变条件本身,但不能改变条件的数量。
无法添加到条件列表中?
if函数python_关于函数:如何在python中为一个if语句提供多个条件相关推荐
- python if语句多个条件-关于函数:如何在python中为一个if语句提供多个条件
本问题已经有最佳答案,请猛点这里访问. 所以我在用python 3.1.5编写一些代码,这些代码需要有多个条件才能发生某些事情.例子: 1 2 3 4 5def example(arg1, arg2, ...
- python中2d_【IT专家】如何在Python中复制一个2D数组?(复制)
本文由我司收集整编,推荐下载,如有疑问,请与我司联系 如何在 Python 中复制一个 2D 数组? ( 复制 ) 如何在 Python 中复制一个 2D 数组 ?( 复制 )[ 英 ]How to ...
- python中用什么函数读取字符串_如何在Python中获得函数名作为字符串?
在Python中,如何在不调用函数的情况下以字符串的形式获得函数名? 1 2 3 4def my_function(): pass print get_function_name_as_string( ...
- 如何在Python中声明一个数组?
如何在Python中声明数组? 我在文档中找不到任何对数组的引用. #1楼 这个怎么样... >>> a = range(12) >>> a [0, 1, 2, 3 ...
- 如何在 Python 中创建一个简单的神经网络
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 引言 在过去的几十年里,机器学习对世界产生了巨大的影响,而且它的普 ...
- c++定义一个动态对象数组_如何在Python中自定义一个可被调用的对象实例?
前言 在关于Python描述符函数的详解三篇中,我们有提到如何基于类创建一个"描述符函数",之所以能够基于类创建这样一个概念,是因为用到了类中的__call__属性,从前述文章中可 ...
- 如何在Python中表示一个无限数?
如何在python中表示无穷大? 无论您在程序中输入哪个数字,任何数字都不得大于此无穷大表示形式. #1楼 另一种较不方便的方法是使用Decimal类: from decimal import Dec ...
- 如何在Python中针对一个值检查多个变量?
Given multiple variables and they are assigned some values, we have to test a value with these varia ...
- python下载bt文件_给定一个.torrent文件,如何在python中生成一个磁力链接?
小编典典 您可以使用从BitTorrent中提取的bencode模块来执行此操作. 为了展示一个例子,我从这里下载了Ubuntu的torrent ISO: http://releases.ubuntu ...
最新文章
- IP地址概念及其划分
- python(numpy,pandas3)——numpy索引
- 终于看到这么贱的星座分析了
- kubernetes视频教程笔记 (13)-容器start、stop、相位
- pandas读取csv文件数据并对数据分类使用matplotlib画出折线图
- 【机器学习】异常检测算法之(KNN)-K Nearest Neighbors
- 报Keystore was tampered with, or password was incorret的原因
- 免费的Office办公套件LibreOffice for Mac
- Netty源码解析(八)之Recycler
- 使用 Python 生成二维码
- 5G千兆智能网关的车联网应用
- 【JavaScript进阶学习】NodeJs语言的介绍及基本使用
- 清除COM口数值,释放被占用的COM口
- Fping的基本使用
- 最全哈夫曼树哈夫曼编码讲解,兄弟你值得拥有
- 正则表达式中(括号) [方括号] {大括号}的区别
- 获取iPhone各个版本屏幕大小
- 1.2V转5V稳压芯片,低功耗电路
- 正弦波振荡电路的相关概念
- Vista优化大师3.31正式版下载,磁盘整理升级到1.1