## 可负担住房的消失与无家可归现象的增加 如今可负担住房的缺乏是导致无家可归现象的重要原因,而这个问题在历史上是通过单人间出租屋(SRO)来解决的——就像 YMCA 曾经提供的那些。自 1860 年代起,YMCA 和更广泛的寄宿公寓市场提供了安全、经济实惠的房间,在 1940 年达到顶峰,超过 10 万间,为年轻男性和低收入工人提供了一个重要的安全网。 然而,从 19 世纪末开始,这些 SRO 因改革者的道德反对而遭到系统性拆除,他们认为这些房屋是滋生社会问题的温床。建筑规范、分区法和排斥性做法使这种住房类型蒙羞并最终使其非法化,优先考虑独栋住宅。 这种蓄意的破坏,加上后来的城市更新项目,导致了数百万 SRO 单元的流失。由此产生的住房短缺直接导致了 20 世纪末的无家可归危机,而精神卫生机构的非机构化则加剧了这一问题。重新合法化 SRO,可能通过改造空置的办公空间,为扩大规模、深度可负担的住房提供了一条可行的途径,并可能成为解决今天危机的方案。
## 加速你的Python:10个性能技巧
Python的简洁性和多功能性使其成为各种应用的顶级语言,但性能瓶颈可能会出现。 这份指南由深度学习工程师Dido Grigorov撰写,提供了10种经过严格测试的策略,可以在不牺牲可读性的前提下加速Python代码。
关键技术包括利用**集合(sets)**进行更快的成员资格测试,**避免不必要的数据复制**和**在循环中进行异常处理**,以及使用**`__slots__`**来实现内存效率。 优化还包括使用**`math`函数**代替运算符,**预分配内存**,使用**局部函数**,以及利用强大的模块,如**`itertools`**和**`bisect`**来进行组合操作和排序列表管理。
文章强调尽量减少循环内的函数调用,并强调了PyCharm的**AI助手**等工具用于重构。 基准测试表明,即使是增量改进——例如从列表切换到集合——也能带来显著的性能提升。
最终,该指南提倡一种平衡的方法,优先考虑速度和代码清晰度,以实现高效且可扩展的Python编程。