本问题已经有最佳答案,请猛点这里访问。

所以我在用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语句提供多个条件相关推荐

  1. python if语句多个条件-关于函数:如何在python中为一个if语句提供多个条件

    本问题已经有最佳答案,请猛点这里访问. 所以我在用python 3.1.5编写一些代码,这些代码需要有多个条件才能发生某些事情.例子: 1 2 3 4 5def example(arg1, arg2, ...

  2. python中2d_【IT专家】如何在Python中复制一个2D数组?(复制)

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 如何在 Python 中复制一个 2D 数组? ( 复制 ) 如何在 Python 中复制一个 2D 数组 ?( 复制 )[ 英 ]How to  ...

  3. python中用什么函数读取字符串_如何在Python中获得函数名作为字符串?

    在Python中,如何在不调用函数的情况下以字符串的形式获得函数名? 1 2 3 4def my_function(): pass print get_function_name_as_string( ...

  4. 如何在Python中声明一个数组?

    如何在Python中声明数组? 我在文档中找不到任何对数组的引用. #1楼 这个怎么样... >>> a = range(12) >>> a [0, 1, 2, 3 ...

  5. 如何在 Python 中创建一个简单的神经网络

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 引言 在过去的几十年里,机器学习对世界产生了巨大的影响,而且它的普 ...

  6. c++定义一个动态对象数组_如何在Python中自定义一个可被调用的对象实例?

    前言 在关于Python描述符函数的详解三篇中,我们有提到如何基于类创建一个"描述符函数",之所以能够基于类创建这样一个概念,是因为用到了类中的__call__属性,从前述文章中可 ...

  7. 如何在Python中表示一个无限数?

    如何在python中表示无穷大? 无论您在程序中输入哪个数字,任何数字都不得大于此无穷大表示形式. #1楼 另一种较不方便的方法是使用Decimal类: from decimal import Dec ...

  8. 如何在Python中针对一个值检查多个变量?

    Given multiple variables and they are assigned some values, we have to test a value with these varia ...

  9. python下载bt文件_给定一个.torrent文件,如何在python中生成一个磁力链接?

    小编典典 您可以使用从BitTorrent中提取的bencode模块来执行此操作. 为了展示一个例子,我从这里下载了Ubuntu的torrent ISO: http://releases.ubuntu ...

最新文章

  1. IP地址概念及其划分
  2. python(numpy,pandas3)——numpy索引
  3. 终于看到这么贱的星座分析了
  4. kubernetes视频教程笔记 (13)-容器start、stop、相位
  5. pandas读取csv文件数据并对数据分类使用matplotlib画出折线图
  6. 【机器学习】异常检测算法之(KNN)-K Nearest Neighbors
  7. 报Keystore was tampered with, or password was incorret的原因
  8. 免费的Office办公套件LibreOffice for Mac
  9. Netty源码解析(八)之Recycler
  10. 使用 Python 生成二维码
  11. 5G千兆智能网关的车联网应用
  12. 【JavaScript进阶学习】NodeJs语言的介绍及基本使用
  13. 清除COM口数值,释放被占用的COM口
  14. Fping的基本使用
  15. 最全哈夫曼树哈夫曼编码讲解,兄弟你值得拥有
  16. 正则表达式中(括号) [方括号] {大括号}的区别
  17. 获取iPhone各个版本屏幕大小
  18. 1.2V转5V稳压芯片,低功耗电路
  19. 正弦波振荡电路的相关概念
  20. Vista优化大师3.31正式版下载,磁盘整理升级到1.1

热门文章

  1. ubuntu中安装apache ab命令进行简单压力测试
  2. RS232通信之C++实现---PC端
  3. 定时器时间动态变化(变速)
  4. 【转】SSL/TLS协议运行机制的概述
  5. Gradient Boosting Decision Tree学习
  6. 设置 cell点击 背景色
  7. HDU 1533 二分图最小权匹配 Going Home
  8. elipse手机设备显示Target unknown或者offline解决方法
  9. 小网站架构优化-提升抗并发能力:子应用程序分离方案
  10. JS正则表达式详解2