在Python中将“A或B”赋值给变量的最简方式是什么?

0 投票
3 回答
602 浏览
提问于 2025-04-17 04:14

你好,Python专家们,

我想知道有没有更简短的方法来给一个变量赋值,如果"A"存在就赋值为"A",如果不存在就赋值为"B"。

假设我有:

mydict = {'a': 'apple', 'b': 'banana', 'c': 'Cherry'}

那么,按照我的理解,给这个mydict变量中不存在的键赋值的最简短(也就是一行代码)的方法是:

myvar = mydict['m'] if 'm' in mydict else 'Melon'

但是有没有更短的方法呢?

在Ruby中,我会这样做:

myvar = mydict[:m] || 'Melon'

只是想问问。提前谢谢你们!

3 个回答

3

你可以试试:

myvar = mydict.get('m', 'melon')

这里的第二个参数是一个默认值,用来在找不到键'm'的时候使用。

可以查看这个链接了解更多信息:http://docs.python.org/library/stdtypes.html

4

我认为使用get()这个方法比用if/else的方式要更好。

myvar = mydict.get('m', 'melon')
5

在这个特定的情况下(从字典中获取一个项目),有一个快捷方式可以使用——那就是 get 方法,它可以让你设置一个默认值。

myvar = mydict.get('m', 'Melon')

撰写回答