除了替换(修改、替换)一些元素之外,还能写出一个对现有字典进行计算的简洁表达式吗?示例:
a = {'x': 3, 'y': 8}
我想编写一个表达式,其计算结果为一个dict,其中“x”元素的值递增1:
{'x': 4, 'y': 8}
我不想修改a
(如a['x']=1
);我想将a
视为不可变的。我可以这样做:
a = {'x': 3, 'y': 8}
a_copy = a.copy()
a_copy['x'] += 1
然后参考副本
。但是有没有一种更简洁的方法不需要额外的变量呢?(我只需要引用结果字典一次。)性能不是问题。
字典理解可以用来生成新字典,但是我想要一个返回现有字典的轻微变化的表达式。
您可以使用字典理解,仅递增要递增的键的值
#I took the keys in a list if you want to increment more keys
keys_to_incr = ['x']
a = {'x': 3, 'y': 8}
#Increment value if key falls in keys_to_incr, else leave value as0is
a_copy = {k: v+1 if k in keys_to_incr else v for k, v in a.items()}
print(a_copy)
输出将是
{'x': 4, 'y': 8}
有点晦涩,但做的工作,只工程以来Python 3.5:
a = {'x': 3, 'y': 8}
a_copy = {**a, 'x': a['x'] + 1}
print(a_copy)
# {'x': 4, 'y': 8}
更好的方法是使用理解:
a_copy = {k: v + 1 if k == 'x' else v for k, v in a.items()}
本文向大家介绍如何编写JSP表达式?,包括了如何编写JSP表达式?的使用技巧和注意事项,需要的朋友参考一下 JSP表达式元素包含一种脚本语言表达式,该脚本语言表达式经过评估,转换为String,并插入该表达式出现在JSP文件中的位置。 由于表达式的值已转换为字符串,因此可以在JSP文件的一行文本中使用表达式,无论是否用HTML标记。 expression元素可以包含根据Java语言规范有效的任何表
所以基本上我的程序是这样的: 它创建包含月份和作为值的购买列表的映射(每个购买包含一个价格)。 有什么方法可以做到这一点吗?
本文向大家介绍html元素哪些标签是不可替换元素?哪些是可替换元素?相关面试题,主要包含被问及html元素哪些标签是不可替换元素?哪些是可替换元素?时的应答技巧和注意事项,需要的朋友参考一下 (replaced element)的展现效果不是由 CSS 来控制的。这些元素是一种外部对象,它们外观的渲染,是独立于 CSS 的。也就是说,css 可以影响元素但是不能影响其内容的显示。 可替换元素: …
我有一个字符串向量,如下所示:。出于某种原因,后面有随机/不同的数字,我正在尝试删除它们。使用正则表达式,我如何告诉R移除或替换后面的数字,所以我最终得到。我对Regex了解不多,所以如果有人不仅能提供代码,还能提供对代码的简要解释,我将非常感谢。谢了!
我想以firstName和lastname的形式获得输出。怎么用正则表达式做,有什么想法吗?
看起来很简单,但我很难想出一个好的方法来做到这一点。这在正则表达式中应该是可能的。在中替换。NET VB。。。对不起,我在Regex还是个新手。。。 我有一个包含销售收据的长字符串。。。。我不想在某些情况下显示美元金额,因此我想在显示字符串之前将所有金额替换为0.00。即。 原始字符串: 订单详细信息:项目一1@$33.99$33.99项目二100@$3.99$399.00项目三10@$333.9