问答题
0.Python3 虽然支持中文作为变量名,但有些大牛却不赞同这么做,你觉得他们的依据是什么?
答:随着时代的发展,越来越多的编程语言不仅支持纯英文代码,还支持全球多数国家的语言开发,有些变态的甚至还能使用 Emoji 符号……但是,都没能流行起来!为什么呢?以下是小甲鱼认同的几点原因,欢迎补充。
- 不利于与外国友人协同开发程序;
- 敲一个中文单词的步骤比英文单词要多;
- 习惯问题:以前的编程语言多数只支持纯英文,大家只能硬着头皮用英文;
- 就算是变量名支持中文了,但符号却还是只能使用英文的;
- 难道你们不觉得切输入法很烦吗?
1. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?
>>>myteacher = '小甲鱼'
>>>yourteacher = myteacher
>>>yourteacher = '黑夜'
>>>print(myteacher)
答:注意区分深拷贝与浅拷贝,此处为浅拷贝。myteacher 和 yourteacher 分别指向值相同的两个变量。
2. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?
答:代码及打印结果在下图中。
3. 在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?
注:这里没有单引号括起来,但 first 是一个字符串,因为使用 print() 打印,所以不包含单引号。可以试试直接>>>first,它是一个字符串。
4.你觉得下面代码出错的原因是什么?
>>> print(x)
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
print(x)
NameError: name 'x' is not defined
答:Python 的变量在使用前虽然不需要声明,但仍然需要先对其进行赋值才能创建变量。这里报错的原因是 name ‘x’ is not defined,x 变量名未定义,言下之意就是访问了一个不存在(未创建)的变量。
5. 你觉得下面代码中,print() 函数会打印什么内容?
print("小甲鱼常说:"Good good study, day day up!"")
答:会报错。因为字符串总是需要成对编写,而 Python 对于字符串的识别是按“就近匹配”的原则,所以上面代码前后两对双引号里面的内容会被解析为字符串,但是中间的 Good good study, day day up! 会让 Python 认为语法错误。
动动手
请编写代码:使用 input() 函数让用户录入姓名,然后将名字保存到变量(name)中,最后使用 print() 函数打印出来。
答:
>>> name = input("请输入您的名字:")
请输入您的名字:小甲鱼
>>> print("你好", name, sep=",", end="!")
你好,小甲鱼!