草庐IT

if-cases

全部标签

python - Lambda 包括 if...elif...else

我想在lambda函数中使用if...elif...else将lambda函数应用于DataFrame列。df和代码类似于:df=pd.DataFrame({"one":[1,2,3,4,5],"two":[6,7,8,9,10]})df["one"].apply(lambdax:x*10ifx显然,这是行不通的。有没有办法将if....elif....else应用于lambda?如何使用ListComprehension获得相同的结果? 最佳答案 嵌套if..elses:lambdax:x*10ifx

python - 多行 'if' 语句缩进的代码样式?

这个问题在这里已经有了答案:Stylingmulti-lineconditionsin'if'statements?[closed](30个回答)关闭9年前。当缩进长if条件时,你通常会做这样的事情(实际上,PyDev缩进是这样的):if(collResv.repeatabilityisNoneorcollResv.somethingElse):collResv.rejected=TruecollResv.rejectCompletely()但是,这会将if语句开始的block置于与if条件的最后部分相同的缩进级别,这使得它非常难看/在我看来很难阅读,因为您不会立即看到block开始的

Python 评估 : is it still dangerous if I disable builtins and attribute access?

我们都知道evalisdangerous,即使您隐藏了危险的函数,因为您可以使用Python的自省(introspection)功能深入挖掘事物并重新提取它们。例如,即使您删除了__builtins__,您也可以使用检索它们[cforcin().__class__.__base__.__subclasses__()ifc.__name__=='catch_warnings'][0]()._module.__builtins__但是,我看到的每个示例都使用属性访问。如果我禁用所有内置函数,和禁用属性访问(通过使用Python标记器标记输入并在它具有属性访问标记时拒绝它)怎么办?在你问之前

python - 有没有办法更好地写这些ifs?

我需要用Python编写这四个if。注意它的作用,是在循环中的四种可能状态之间变化:1,0->0,1->-1,0->0,-1并返回到第一个状态。if[dx,dy]==[1,0]:dx,dy=0,1if[dx,dy]==0,1:dx,dy=-1,0if[dx,dy]==[-1,0]dx,dy=0,-1if[dx,dy]==[0,-1]:dx,dy=1,0谁能给我推荐一个更好/更好的方法来写这个? 最佳答案 dx,dy=-dy,dx如有疑问,请应用数学。;) 关于python-有没有办法更好

Python:如何在 if 语句中使用 RegEx?

我有以下代码查看一个目录中的文件并将包含某个字符串的文件复制到另一个目录中,但我正在尝试使用正则表达式,因为字符串可能是大写和小写或两者的混合。在我尝试使用RegEx之前,这是有效的代码importosimportreimportshutildeftest():os.chdir("C:/Users/David/Desktop/Test/MyFiles")files=os.listdir(".")os.mkdir("C:/Users/David/Desktop/Test/MyFiles2")forxin(files):inputFile=open((x),"r")content=inpu

python - 是否有与 pythonic "if __name__ == "__main_ _": main()"等效的 R?

目标是有两种简单的方法来获取一些代码,比如func.R,包含一个函数。调用RCMDBATCHfunc.R初始化函数并计算is。在session中,发出source("func.R")只是初始化函数。有什么想法吗? 最佳答案 我认为interactive()函数可能会起作用。当R被交互使用时,此函数返回TRUE,否则返回FALSE。所以只需使用if(interactive())即相当于if(!interactive()){main()} 关于python-是否有与pythonic"if__

python - 根据 if-elif-else 条件创建新列

我有一个数据框df:ABa22b31c13我想根据以下条件创建一个新列:如果行A==B:0如果行A>B:1如果行A所以给定上表,应该是:ABCa220b311c13-1对于典型ifelse我做的案例np.where(df.A>df.B,1,-1),pandas是否提供了一种特殊的语法来一步解决我的问题(无需创建3个新列然后组合结果)? 最佳答案 将上面列出的一些方法形式化:创建一个对数据框的行进行操作的函数,如下所示:deff(row):ifrow['A']==row['B']:val=0elifrow['A']>row['B']:

python - Python 会懒惰地评估 if 的条件吗?

这个问题在这里已经有了答案:DoesPythonsupportshort-circuiting?(4个回答)关闭2年前.例如,如果我有以下语句:if(foo1orfoo2)......如果foo1为真,python会检查foo2的条件吗? 最佳答案 是的,Python懒惰地评估bool条件。docssay,Theexpressionxandyfirstevaluatesx;ifxisfalse,itsvalueisreturned;otherwise,yisevaluatedandtheresultingvalueisreturne

python - Python 是否有更简洁的方式来表达 "if x contains a|b|c|d..."?

这个问题在这里已经有了答案:Howtocheckifastringisasubstringofitemsinalistofstrings(18个回答)关闭8年前。检查字符串x是否是y的子字符串的Pythonic方法是:ifxiny:判断x是否等价于a、b、c、d、e、f或g也是Pythonic:ifxin[a,b,c,d,e,f,g]:但检查某些字符串x是否包含a、b、c、d、e、f或g看起来很笨重:ifainxorbinxorcinxordinxoreinxorfinxorginx有没有更Pythonic的方法来检查字符串x是否包含列表的元素?我知道自己使用循环或使用正则表达式来编写

python的re : return True if string contains regex pattern

我有一个这样的正则表达式:regexp=u'ba[r|z|d]'如果单词包含bar、baz或bad,则函数必须返回True。简而言之,我需要Python的正则表达式模拟'any-string'in'text'我怎样才能意识到这一点?谢谢! 最佳答案 importreword='fubar'regexp=re.compile(r'ba[rzd]')ifregexp.search(word):print('matched') 关于python的re:returnTrueifstringcon