零基础入门学习Python 003小插曲之变量和字符串

知识点总结

插曲之变量

定义
把一个值赋值给一个名字时,ta会存储在内存中(把值存储在变量中)
python没有变量只有名字,python并不是把值存储在变量中,而更像是把名字贴在
值的上边
注意的地方:

在使用变量之前,需要对其先赋值
变量名可以包括字母、数字、下划线,但变量名不能以数字开头
字母可以是大写或小写,但大小写不同的,严格区分大小写
等号(=)是赋值的意思,左边是名字,右边是值,可以写反咯
见名知意(专业的名字)

插曲之字符串

定义:引号(单引号/双引号)内的一切东西,必须成双成对
原始字符串:
只需要在字符串前面加上一个英文字母r即可,str1=r'C:\now'
原始字符串最后不能加上反斜杠,自己想办法加上去,str1=r'C:\now\''\'
长字符串:
使用三重引号字符串,得到一个跨越多行的文本
代码示例:

teacher = "小甲鱼"
print(teacher)
teacher = "老甲鱼"
first = 1
second = 2
#数字相加
third = first + second
print(third)
#字符串拼接
myteacher = "小甲鱼"
yourteacher = "黑夜"
ourteacher = myteacher + yourteacher
print(ourteacher)

例子:

如果字符串中需要出现单引号或双引号怎么办?我想打印字符串:Let’s go!

  1. 使用转义符号()对字符串中的引号进行转义,str1 = ‘Let\’s go!’
  2. 外层使用双引号,里面直接把字符串放进去即可

打印str1 = "C:\now";print(str)

  1. 使用反斜杠对自身进行转义(反斜杠数量比较少)
  2. 使用原始字符串(一个字符串中有很多个反斜杠)

课后习题

测试题

题1: 以下哪个变量的命名不正确?为什么?

(A) MM_520 (B) MM520 (C) 520_MM (D) _520_MM
(C)选项不正确,因为 变量名可以包括数字,字母,下划线,但是Python 中的变量名不能以数字开头。

题2:在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?

>>>myteacher = '小甲鱼'
>>>yourteacher = myteacher
>>>yourteacher = '黑夜'
>>>print(myteacher)

会打印:小甲鱼

题3:在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?

>>> myteacher = '小甲鱼'
>>> yourteacher = myteacher
>>> myteacher = '黑夜'
>>> print(yourteacher)

会打印:小甲鱼

题4:在不上机的情况下,以下代码你能猜到屏幕会打印什么内容吗?

>>>first = 520
>>>second = '520'
>>>first = second
>>>print(first)

会打印:520,注:这里没有单引号括起来,但是他是一个字符串,因为使用 print() 打印,所以不包含单引号。可以试试直接>>>first,它是一个字符串的。

题5: 除了使用反斜杠(\)进行字符转义,还有什么方法可以打印:Let’s go! 这个字符串?
“Let’s go!”

题6:如果非要在原始字符串结尾输入反斜杠,可以如何灵活处理?

>>>str = r'C:\Program Files\FishC\Good''\\'

题7:在这一讲中,我们说变量的命名需要注意一些地方,但小甲鱼在举例的时候貌似却干了点儿“失误”的事儿,你能看得出小甲鱼例子中哪里有问题吗?
这里写图片描述

在例子中小甲鱼起了个 str 名字的变量,但事实上我们发现,str 的颜色跟普通变量貌似不同?没错,str() 和 print() 都是内置函数,但 Python 貌似不介意我们对内置函数进行赋值操作,所以这点我们以后就要注意啦,否则可能会出现以下的 BUG:

>>> print = 1
>>> print("I love FishC")
Traceback (most recent call last):
  File "<pyshell#37>", line 1, in <module>
    print("I love FishC")
TypeError: 'int' object is not callable

动动手

题1:还记得我们第一讲的动动手的题目吗?这一次要求使用变量,计算一年有多少秒?

提示:可以以 DaysPerYear(每年天数),HoursPerDay(每天小时数),MinutesPerHour(每小时分钟数),SecondsPerMinute(每分钟秒数)为变量名。

DaysPerYear = 365
HoursPerDay = 24
MinutesPerHour = 60
SecondsPerMinute = 60
result = DaysPerYear * HoursPerDay * MinutesPerHour * SecondsPerMinute
print(result)

题2:关于最后提到的长字符串(三重引号字符串)其实在 Python3 还可以这么写,不妨试试,然后比较下哪种更方便?

当然是长字符串好用啦

>>> string = (
"我爱鱼C,\n"
"正如我爱小甲鱼,\n"
"他那呱唧呱唧的声音,\n"
"总缠绕于我的脑海,\n"
"久久不肯散去……\n")

猜你喜欢

转载自blog.csdn.net/xyyojl/article/details/81071655
今日推荐