小编bea*_*rdo的帖子

TypeError:'float'对象不可订阅

PizzaChange=float(input("What would you like the new price for all standard pizzas to be? "))      
PriceList[0][1][2][3][4][5][6]=[PizzaChange]  
PriceList[7][8][9][10][11]=[PizzaChange+3]
Run Code Online (Sandbox Code Playgroud)

基本上我有一个输入,用户将输入一个数值(浮点输入),然后它将所有这些上述列表索引设置为该值.出于某种原因,我无法在不提出问题的情况下设置它们:

TypeError: 'float' object is not subscriptable
Run Code Online (Sandbox Code Playgroud)

错误.我做错了什么,或者我只是以错误的方式看待它?

python indexing replace list insert

10
推荐指数
2
解决办法
14万
查看次数

如何强制释放字典使用的内存?

我正在开发一个 Python 脚本,该脚本查询多个不同的数据库以整理数据并将所述数据保存到另一个数据库。该脚本从大约 15 个不同数据库的数百万条记录中收集数据。为了尝试加速脚本,我包含了一些缓存功能,归结为拥有一个包含一些经常查询的数据的字典。字典保存键值对,其中键是根据数据库名称、集合名称和查询条件生成的哈希值,值是从数据库中检索到的数据。例如:

{123456789: {_id: '1', someField: 'someValue'}}哪里123456789是散列,{_id: '1', someField: 'someValue'}是从数据库中检索到的数据。

将这些数据保存在本地字典中意味着不必每次都查询数据库(这可能很慢),我可以在本地访问一些经常查询的数据。如前所述,有很多查询,因此字典可能会变得非常大(几 GB)。我有一些代码psutil用于查看运行脚本的机器上有多少内存可用,如果可用内存低于某个阈值,我会清除字典。清除字典的代码是:

cached_documents.clear()
cached_documents = None
gc.collect()
cached_documents = {}
Run Code Online (Sandbox Code Playgroud)

我应该指出这cached_documents是一个局部变量,它被传递到所有访问或添加到缓存的方法中。不幸的是,这似乎还不足以正确释放内存,因为即使在调用了上述代码之后,Python 仍然占用大量额外内存。您可以在此处查看内存使用情况:

在此处输入图片说明

值得注意的是,字典被清除的前几次,我们向系统释放了大量内存,但随后的每次似乎都更少,此时内存使用量趋于平缓,因为缓存被非常频繁地清除,因为自从可用内存在阈值内,因为 Python 占用了大量内存。

有没有办法在清除字典时强制 Python 正确释放内存,以避免平铺?任何提示表示赞赏。

python memory dictionary memory-leaks memory-management

6
推荐指数
1
解决办法
134
查看次数

覆盖 Outlook 暗模式按钮背景

我正在尝试向我的电子邮件模板添加对暗模式的支持,但是在 Outlook 方面遇到问题。由于某种原因,Outlook 部分覆盖了我的按钮的背景,导致其显示不正确:

在此输入图像描述

该按钮的 HTML 如下:

<td align="center" style="word-break: break-word; font-family: &quot;Nunito Sans&quot;, Helvetica, Arial, sans-serif; font-size: 16px;">
  <a href="{{action_url}}" class="f-fallback button" target="_blank" style="color: #fff; border-color: #13c2c2; border-style: solid; border-width: 10px 18px; background-color: #13c2c2 !important; background-image: linear-gradient(#13c2c2, #13c2c2) !important; display: inline-block; text-decoration: none; border-radius: 3px; box-shadow: 0 2px 3px rgba(0, 0, 0, 0.16); -webkit-text-size-adjust: none; box-sizing: border-box;">Reset your password</a>
</td>
Run Code Online (Sandbox Code Playgroud)

该按钮具有以下内联样式(为了方便起见,进行了格式化):

<td align="center" style="word-break: break-word; font-family: &quot;Nunito Sans&quot;, Helvetica, Arial, sans-serif; font-size: 16px;">
  <a href="{{action_url}}" class="f-fallback button" target="_blank" style="color: …
Run Code Online (Sandbox Code Playgroud)

html css email outlook html-email

4
推荐指数
1
解决办法
1万
查看次数