📌  相关文章
📜  porco dio (1)

📅  最后修改于: 2023-12-03 15:33:44.077000             🧑  作者: Mango

Porco Dio ~程序员的禁忌词汇~

Porco Dio 是意大利语中的脏话,翻译成英语为“Pork God”,而这个词汇在程序员圈子中被广泛传播和使用。它的出现可以追溯到一个 IT 开发者使用 Python 语言编写的项目中。

背景

在 Python 语言中,有一个叫作 unittest 的测试框架。这个框架是用于编写单元测试的,而在其文档中有一个非常有趣的例子。

下面是这个例子的代码:

import unittest
 
class TestStringMethods(unittest.TestCase):
 
    def test_upper(self):
        self.assertEqual('foo'.upper(), 'FOO')
 
    def test_isupper(self):
        self.assertTrue('FOO'.isupper())
        self.assertFalse('Foo'.isupper())
 
    def test_split(self):
        s = 'hello world'
        self.assertEqual(s.split(), ['hello', 'world'])
        # check that s.split fails when the separator is not a string
        with self.assertRaises(TypeError):
            s.split(2)
 
if __name__ == '__main__':
    unittest.main()

这个例子的目的是测试字符串的各种方法是否按照预期工作。但是,在这个例子的测试用例中,有一条测试会失败,而失败时会输出一个错误信息,其中包含了 Porco Dio

产生的原因

出现这个脏话的原因是因为在 test_split 函数中,使用了错误的参数调用 split() 方法,导致了一个 TypeError 异常。而测试框架 unittest 会在异常发生时输出错误信息,其中包含了这个脏话。

具体来说,TypeError 异常的错误信息是这样的:

TypeError: must be str or None, not int Porco Dio!

其中的 Porco Dio 就是这个脏话。

在程序员社区中的使用

这个脏话在程序员社区中被广泛传播,成为了一个很有名的词汇。通常来说,这个词汇被使用在以下几种情况下:

  • 调试时出现异常或错误,而出现的错误信息包含了 Porco Dio
  • 当程序员遇到棘手的问题,或者代码写得很糟糕时,他们可能会用这个脏话自责或骂自己。
  • 还有一种情况是,当程序员看到别人的代码写得很差或者有很大的问题时,他们可能会使用这个脏话来表示自己的愤怒或不满。
总结

Porco Dio 这个脏话从 Python 的一个测试例子中走红,成为了程序员社区中的一个流行词汇。对于普通用户而言,这个词汇是很不礼貌的,但对于程序员而言,它已经成为了一种交流方式。不过,作为一个职业人士,程序员也要注意自己的口头禅和行为,尤其是在企业中。