[关闭]
@yangwenbo 2021-08-23T17:22:22.000000Z 字数 3334 阅读 342

风变编程-Python基础语法

章节一:print()函数与变量

1. print()函数

print()函数的用法有以下几种:单枪匹马——不带引号、搭配单引号、搭配双引号、搭配三引号

注意,在正式敲代码之前,必须切换成英文输入状态,保证print()函数的括号是用【英文括号】,不然会报错😢。

  1. print(520)

虽然只是输入了一个简单的print,但在背后,这段Python代码却帮你做了这样的一些事情:

  • 我们向计算机发出指令:“打印‘520’”;
  • Python把这行代码编译成计算机能听懂的机器语言;
  • 计算机做出相应的执行;
  • 最后把打印结果呈现在我们面前。

这,就是我们通过Python这个工具,成功与计算机实现沟通的方式。

image.png-297kB

1.1 单引号的用法

  1. print(520)
  2. print('千寻')

很明显,你会发现,在print('千寻')里,多了一对单引号。【注意⚠️:单引号是英文输入法下的单引号!

那么问题又来了:这个单引号是干啥用的?为什么打印文字的时候需要加上引号呢?

这是因为,计算机的脑回路比较特别:只能理解数字,却读不懂文字。因为数字和数学运算是标准化、有固定格式的,而文字却能够千变万化。

如果你直接让计算机print(千寻),它会一脸懵并大声报错:“这两个字啥意思,你没有定义清楚,不懂诶……”

image.png-153.7kB

这,便是print()函数中引号的用法:当括号内有引号的时候,就相当于告诉计算机——你不需要执行多余的操作,我输入什么,你就打印什么

image.png-124.1kB

1.2 双引号的用法

在print()函数内不仅能使用单引号,还能使用双引号,两者的效果没什么区别,都能让你打印出一行文本。【注意⚠️:双引号是英文输入法下的双引号,而不是两个单引号!】

有些时候,单引号和双引号可能会在括号内同时出现,比如print("Let's play")。

这种情况下,需要注意区分清楚哪个引号是属于print()函数结构,哪个引号是属于你要让计算机打印的内容,可别“混搭”了。

image.png-141.2kB

在print("Let's play")中,没有被打印出来的引号就属于print()函数结构啦。

不过,在print()函数中,引号里的内容其实也不一定非得是文字,还可以是英文和数字

相应地,在括号内没有引号的情况下,我们应该往括号内放入计算机能够“理解”的内容,如:数字或数学运算

此时,print函数会让计算机尝试去“读懂”括号里的内容,并打印最终的结果。

因此,当计算机读懂数据数字后,就打印这个数据。当读懂数字运算后,则打印得到运算结果。

比如代码框输入下列代码的话,计算机会在终端输出什么结果? print(1+1)

image.png-74.7kB

在这里,计算机并没有再原样打印“1+1”,因为print(1+1)是计算机能直接读懂的数学运算,所以,它会直接打印出最终的运算结果:“2”。这就是计算机“读懂内容”的表现。

1.3 三引号的用法

image.png-120.1kB

But,觉得卖身契的排版还不够好看,希望可以让卖身契文字的每一个逗号后面都换行显示,打印出“自动换行”的效果

image.png-143.9kB

答案是:在print内部使用三引号'''来实现跨行输出。【注意⚠️:三引号是英文输入法下的三个单引号!】

print()函数的四种情况--无引号,单引号,双引号,三引号。一起回顾一下它们之间的差别.

image.png-238.2kB

image.png-184.8kB

注意,【前方高能预警】,接下来,我要告诉你一个99%的初学者都踩过的代码bug。

在Python中,默认所有正确的语法,包括标点符号都是【英文】。不小心用了中文标点的话,计算机会无法识别,然后报错。

在终端里,你能看到的最常见的符号报错提示就是【syntaxError:invalid syntax】(语法错误:无效语法)

我们在debug(解决程序报错)的时候,需要下意识地找找自己是否犯了这样细小却致命的错误。

1.4 转义字符

其实,换行还有第二种实现换行的办法:使用转义字符\n,像这样:

image.png-130.6kB

除了\n之外,转义字符还有很多,它们的特征就是:反斜杠+想要实现的转义功能首字母。

比如换行\n代表【+newline】;退格\b代表【+backspace】;回车\r代表【+return】。大家可以按照这种方法记住转义字符的含义。

我把常用的一些转义字符做了个总结:
image.png-226.9kB

2. 变量和赋值

2.1 变量的定义

  1. name='千寻'

这就是一个常见的“给变量赋值”的动作。在这里,name就是一个变量,这行代码的意思,就是把“千寻”这两个字【赋值】给了“name”这个【变量】。

这就好比,为了让千寻在日后能在计算机中更方便地找到她的名字,我们帮她把名字收纳进了一个小盒子里,并在这个盒子上贴了个叫“name”的标签。

回想一下,我们平时在收拾东西的时候,是不是会把散落各处东西放进不同的盒子里,并且做好标记?这样的“收纳”动作,能够让空间变得整齐,也更方便我们自己取用东西。

image.png-252.4kB

同理,计算机也是这么做的,它会把成千上万的数据放在不同的“盒子”里,这样才方便它存储和操作数据。

这个“盒子”在Python中被称为变量,你可以在这个“盒子”里放任何你想放的内容。

而这个往盒子里装东西的过程,在代码的魔法世界被称为【赋值】。

image.png-94.4kB

在千寻签完合约后,汤婆婆就把【name】这个『标签』从装有她名字【千寻】的『盒子』撕下来,贴到了装有【小千】这个名字的『盒子』。

这时,取出贴有【name】这个『标签』的盒子,读出的内容变成了『小千』:

  1. name='小千'

现在,请你运行下面这段代码,看一下打印函数的最终输出结果是什么。

image.png-68.4kB

终端上出现的结果是不是【小千】?可这又是为什么呢?我们对“name”这个变量第一次的赋值不是【'千寻'】吗?为什么打印的结果是第二次的赋值呢?

这就涉及到了变量的特点:变量之所以称为变量,是因为它保存的数据是可以随意变化的

刚才我们讲,我们可以将变量当作一个盒子,你可以在这个盒子里放任何内容,但盒子都有它的最大容量,不能无限制地塞东西。

偏偏在代码世界里,盒子的容量又特别小,仅为1。所以当你需要放进新的东西时,只能寻找一个新的盒子。

image.png-86.1kB

解析:
第一行代码:name='千寻'表达的意思是:把千寻这个名字放到name这个变量“盒子”中。

由于,计算机是一行行自上而下执行代码的,所以当运行到第二行代码name='小千'时,变量“name”里存储的【'千寻'】就被替换成了【'小千'】。

所以,当运行到第三行print(name)时,我们打印出的结果,就自然而然的是小千了。

对于变量的命名,我们可以遵循以下规范:

image.png-43.2kB

2.2 赋值的含义

除了变量命名之外,还要注意的是:在代码世界中,赋值符号=不是左边等于右边的意思。仅仅表示赋值动作:把右边的内容放到了左边的盒子中

代表左右两边相等的符号,是比较运算符==,虽然他俩长得像,但代表的却是完全不同的意思,可千万不要搞混了。

image.png-51.4kB

3. 本章小结

image.png-237kB

4. 习题练习

4.1 习题一

1.题目要求
除了文字和数字之外,我们还可以灵活运用print()函数,打印出带特殊格式的东西,例如:字符画。现在,请试着使用print()函数打印出一只属于自己的“皮卡丘”吧。

image.png-146.9kB

  1. print('''へ     /|
  2.   /\7    ∠_/
  3.   / │   / /
  4.  │ Z _,< /   /`ヽ
  5.  │     ヽ   /  〉
  6.   Y     `  /  /
  7.  イ● 、 ●  ⊂⊃〈  /
  8.  ()  へ    | \〈
  9.   >ー 、_  ィ  │ //
  10.   / へ   / ノ<| \\
  11.   ヽ_ノ  (_/  │//
  12.   7       |/
  13.   >―r ̄ ̄`ー―_''')

4.2 习题二

1.题目要求

请将无脸男对千寻说的话,按照正确的格式打印出来。
下面是无脸男对千寻说的话:千寻你好,人们叫我'无脸男' 这个世界的人都选择无视我 只有你看到了我并和我打招呼 我感到很孤单,很孤单 你愿意和我成为朋友吗?


请你把这段话按照下面的格式打印出来:
千寻你好,人们叫我'无脸男'
这个世界的人都选择无视我
只有你看到了我并和我打招呼
我感到很孤单,很孤单
你愿意和我成为朋友吗?

2.题目讲解

方法一:
1.根据题目可知,本题需要运用三个知识点:换行,运用转义字符将单引号打印出来,打印函数。
2.换行\n
3.转义引号\'
4.打印函数print()
【提示】
请注意是反斜杠\,并且反斜杠在前。

image.png-180.3kB

方法二:
直接使用三引号,打印出内容里的单引号并且实现换行

image.png-171.1kB

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注