# 7 行代码搞崩溃 B 站，原因令人唏嘘！

[En]

In that article, the positioning process, problem analysis, optimization and improvement were written in great detail. In my impression, it is rare for large domestic Internet companies to “review” and “repay their debts” so openly after similar accidents. (it is worth sending a button with three links)

[En]

Lua 语言的这种”字符串隐式变数字”的行为，即使在大意不察觉的情况下，似乎也不会造成太大问题。在 B 站代码中，除了出事故时传的字符串”0″以外，估计它一直接收的都是其它字符串数字，一直也没出问题，显然程序员是把这当成一种便利手段了（因为不需作类型转换）。

[En]

In most programming languages, dividing by zero is an unforgivable mistake, which is consistent with the common sense that we have mastered in primary school math class: * the number zero is not allowed as a divisor !*

[En]

Take out your phone, open your calculator and see what it says:

ZeroDivisionError 除零错误，这是在捍卫我们根深蒂固的数学常识。

nan 一般也被称为”NaN”，是”No a Number”的缩写，表示”不是一个数”。它来头不小，是在 1985 年的 IEEE 754 浮点数标准中首次引入的。

[En]

To put it bluntly, it is also a value in a numeric type, but represents an “unrepresentable value”. In other words, it represents a number of very abstract concepts.

Python 中也有这两个数的存在，即 float(‘inf’) 表示无穷大、float(‘nan’) 表示非数。它们就像是两个黑洞，会吞噬掉任何试图前来”搭讪”的数：

[En]

So who has a stronger gravitational pull when the two black holes are close to each other? Take a look at the example:

[En]

Such a feature is simply too free, and it may be useful at some point, but it can also bury unknown hidden dangers.

[En]

Of course, if the programmer who wrote this code had added one more conditional judgment, this accident could have been completely avoided. From another perspective, this is the programmer’s improper handling of the termination conditions of recursive programs and the two unruly language features that can not be abandoned to the programming language.

Original: https://www.cnblogs.com/pythonista/p/16533376.html
Author: 豌豆花下猫
Title: 7 行代码搞崩溃 B 站，原因令人唏嘘！

(0)

### 大家都在看

• #### Pytorch model.eval()的作用

使用pytorch训练和预测时会分别使用到以下两行代码： model.train() model.eval() 后来想了解model.eval()的具体作用，在网上查找资料大都是以…

Python 2023年9月29日
063
• #### python中的pygame弹球游戏代码_pygame实现弹球游戏

本文实例为大家分享了pygame实现弹球游戏的具体代码，供大家参考，具体内容如下 pygame弹球游戏 写的很简陋 pip install pygame 安装pygame模块 代码…

Python 2023年9月24日
0114
• #### python pandas dataframe 遍历行_在pandas中遍历DataFrame行的实现方法

pandas.DataFrame.loc好慢，怎么遍历访问DataFrame如果用for来遍历，pandas比普通的python程序还要慢. 试试Series.apply函数来调用…

Python 2023年8月17日
074
• #### 如何免安装使用 Python？推荐 17 个在线的 Python 解释器！

作者：Al Sweigart译者：豌豆花下猫@Python猫英文：https://inventwithpython.com/blog/2022/10/30/17-online-py…

Python 2023年10月31日
076
• #### python某列符合条件则全部_Python：如果列中的n值满足一定条件，则对整列执行计算…

我仍然是Python的傻瓜，所以如果答案很明显的话我道歉。。。我有一些数据帧与此类似(简化示例)：0 1 2 3 0 2 1 1 1 1 3 2 2 2 2 4 3 3 3 3 2…

Python 2023年8月21日
0101
• #### Anaconda奇怪问题记录：WARNING conda.exceptions:print_unexpected_error_report(1251): KeyError(‘pkgs_dirs‘)

今天使用anaconda/tensorflow遇到奇怪问题： 在base环境下不会发生任何问题，但在tensorflow环境下，感觉需要联网的conda命令都实现不了，直觉上认为是…

Python 2023年9月8日
087
• #### 对Java Web中WEB-INF目录的理解以及访问方法

事情发生 在上个暑假第一次写Java web大项目的时候，对于目录管理及分配没有任何经验，就想着清晰明了。后端servlet是用maven进行构建的，所以在目录上没有碰到什么大问题…

Python 2023年10月14日
070
• #### Python neo4j建立知识图谱，药品知识图谱，neo4j知识图谱，知识图谱的建立过程，智能用药知识图谱，智能问诊必备知识图谱

一、知识图谱概念 知识图谱的概念是由谷歌公司在2012年5月17日提出的，谷歌公司将以此为基础构建下一代智能化搜索引擎，知识图谱技术创造出一种全新的信息检索模式，为解决信息检索问题…

Python 2023年9月30日
0113
• #### django5数据库查询操作 及字段说明

1.1命令框内创建新项目 打开指定文件夹，在路径位置输入cmd打开命令行django-admin startproject 项目名 创建项目 1.2在新项目内创建子应用 pytho…

Python 2023年8月3日
0101
• #### [kaggle] House-price（房价预测）中的代码

*pandas.DataFrame.dtypes 用法： df.dtypes，返回一个 Series（sereies的index是DF每一列的名字，value是每一列的dtype）…

Python 2023年8月8日
0120
• #### Python特性

3.1 Python特性 Python是为可读性设计的，与英语有一些相似之处，并受到数学的影响。比如： Python使用新行来完成命令，而不像通常使用分号或括号的其他编程语言。 P…

Python 2023年11月3日
069
• #### Conda方式安装MindSpore CPU版本（Windows）

Conda方式安装MindSpore CPU版本（Windows） 创建Python3.7.5的Conda虚拟环境 * 安装成功 创建Python3.7.5的Conda虚拟环境 c…

Python 2023年9月8日
0123
• #### 抖音”凶猛”的幕后英雄，火山引擎 DataTester 累计做过 150 万次 A/B 测试

在国内互联网领域，字节跳动是最为推崇 A/B 测试的公司，旗下”抖音”、”今日头条”两大最著名产品，连 APP 的名字都是来源于 A…

Python 2023年10月24日
076
• #### 使用Docker实现Jenkins+Python + Pytest +Allure 接口自动化

一、Jenkins搭建 参考《Docker 安装 Jenkins》 进入 jenkins 容器 CLI 界面 docker exec -itu root jenkins /bin/…

Python 2023年9月13日
081
• #### C++ 内存模型

C++ 内存模型（未完。。。） 数据存储 程序数据段 程序代码段 stack栈内存 栈内存属于执行期函数，编译时确定大小 函数执行时栈空间自动分配，结束时栈空间自动销毁 栈对象是线…

Python 2023年10月11日
090
• #### Scrapy的使用(1) — 爬取b站新番排行榜

Scrapy的使用(1) – 爬取b站新番排行榜 scrapy框架笔记(1)，参考官方文档与部分教程，完成一个简单的爬虫程序，爬取了b站的2021年1月新番数据 1. 创建项目 在…

Python 2023年10月2日
0167