Skip to main content

中英文符号,你傻傻的分不清楚

很多零基础用户,包括中学生 大学生非软件行业的其他从业者以及在我历届的学生中他们都在问我一个问题:我的第一个程序就出现了问题?无论我是在IDLE上运行,还是在Pycharm运行,都出现了这样的问题。

01sytaxError

bug的由来

代码出现错误不用着急,这在编程过程中是经常会遇到的而这些错误我们也称之为bug。bug是英文中臭虫的意思。

02bug 它用在编程中还有一个非常有意思由来。早期的计算机都非常的巨大,像这个马克一号,这只是它左侧的一部分,还有右侧另一部分。

03马克1号 所以早期的程序开发人员,当程序出现问题的时候就很难发现这个问题,有一次计算机发生了故障,经过排查最后在计算机的继电器里发现了一只被夹扁的小飞蛾,而这只小虫子卡住了机器的运行。赫柏顺手将飞蛾夹在了记事本里,并诙谐地把程序故障称之为“bug”,这就是今天我们所说的bug的由来,它的原意就是一只臭虫。

03bug笔记本 而后来我们把排除程序故障也称之为Debug,也就是调试的意思。

04debug

最最常见错误

在软件的开发过程中你也会发现大部分的时间都是用来在调试bug。下面我们就来调试一下大家经常遇到的共性的问题:中英文符号傻傻的分不清楚。 这是一位小伙伴给我发来的错误的代码,运行结果如下

05错误 Pycharm 为我们提示了一个错误信息syntax error 也就是句法错误,翻译过来意思是无效的字符 我们看到源码就这一行:print没错、括号没错,而里面的文字我们称之为字符串,我们打印什么,屏幕就输出什么,所以错误也不在这里,经排查过后,那么最后肯定就是这个引号的问题,这里的引号乍一看没什么毛病,但你仔细一看它是中文的引号,这就是我们之前提到的几乎90%的小伙伴会遇到的问题,那就是中文、英文字符傻傻的分不清楚,在编写代码的时候,有的时候是需要敲汉字的,不经意间会把把一些引号、冒号、括号输出成中文的,所以大家在发现提示这样错误先排查是否是使用了中文的符号。将这里的字符改为一下英文状态下的单引号,看到它俩之间是有区别的

06左右对比 除了这个单引号以外 括号也是分中英文的 比如说我们输入一个中文的括号,切换到中文输入法下,我们还没有运行Pycharm提示了错误信息,看到这个红色的波浪线就说明我们这里有错误,运行检测一下,果然提示同样的错误:invalid character,也就是无效的字符。所以小伙伴们一定要注意:将你的输入法切换为英文状态我们将其修改为英文状态,红色的波浪线消失了。

07中文状态下括号

此外还有一个错误:小伙伴们将这个print函数首字母大写了,

08Print大写 运行一下程序,这里也报错了 但是错误内容却是不一样的,这里是name print is not defined,翻译过来意思说这个print没有定义,这是因为在Python中它是区分大小写的

09print错误截图 首字母大写的Print和小写的print它是不一样的,而Python只识别小写的print,对于大写的Print它不识别,所以这里报了一个:name print is not defined的 错误