本课目标
它的特点非常鲜明,简单来说就是用引号括起来的文本。
那么,这些文本数据在程序中是如何存储的呢?
比如你登录一个App,输入就是你的账号和密码;计算就是App验证你的账号和密码是否正确;输出就是你是否登录成功。
这个计算过程中需要一些存储数据的“地方”,我们叫它变量。
变量Variables
A,B,D都是容器,能够存储东西。
变量可以存储各种数据。
变量命名不能以数字开头。
例如一个整数,2018;一个小数,3.1415926;一段文字,I love you 等等。
常量Constant
比如整数 175,小数 52.5,字符串 “Tony” 都是常量,它们是不能被修改的。
眼镜,咖啡,面包都可以放进别的容器,而抽屉本身就是容器。
常量不能被修改。
赋值需要用到等号“=”,所以等号“=”又叫做“赋值运算符”。
赋值Assignment
第1行代码是把字符串 “Tony” 装到 name 里面;
第3行代码是把字符串 “编程” 装到 program 里面。
name = "Tony" program = "编程"
代码小结
当我们要给一个变量赋值就需要这三个部分
B选项正确。
把眼镜装入眼镜盒,衣服装入行李箱,咖啡倒入杯子都有把一个东西装入另一个东西的过程,而B没有这样的过程。
D选项正确。
赋值运算符是等号=。
题目
写两行代码。
第一行把名字”Downey”赋值给变量 name;
第二行使用 print() 输出变量 name 的值。
注意⚠️ ,输出变量时是不需要添加引号的哦~
name = "Downey" print(name)
如果我们给一个变量多次赋值新的常量,会怎么样?
如图所示,我们先后将两个名字 “Downey” 和 “Tony” 赋值给同一个变量 name,输出的结果会是什么呢?
题目
写三行代码。
第一行把名字 “Downey” 赋值给变量 name;
第二行把名字 “Tony” 赋值给变量 name;
第三行使用 print() 输出变量 name 的值。
注意⚠️ ,输出变量时是不需要添加引号的。
name = "Downey" name = "Tony" print(name)
可以看到,在两次赋值之后,我们输出了最后一次赋值的值 Tony。
变量作为一个存储数据的“地方”,其中的东西是可以改变的,但是它每次只能存放一个东西,当我们放入别的东西时,之前的东西就会被丢弃,只留下最后一次放入的东西。
此外,在 Python 中,除了用常量给变量进行赋值,还可以用一个变量给另一个变量赋值。
再来试一下吧~
题目
写三行代码。
第一行把名字 “Downey” 赋值给变量 name;
第二行把变量 name 赋值给变量 myName;
第三行使用 print() 输出变量 myName 的值。
name = "Downey" myName = name print(myName)
代码的成功运行都有一定的规则,如果不遵守这些规则,就会报错。
上节课,已经学习了遇到报错时,需要查看报错提示,关注出错的位置和错误类型,根据提示内容来修改代码。
在这里,主要学习在使用变量时,常见的代码报错有哪些。
注意⚠️:前后变量定义不一致导致代码报错是初学者常常会犯的错误。
如图所示,这个报错提示说明:
1. 出错的行数是第1行;
2. 出错的具体代码是 1name = “Downey”,
1name 的下方有一个小箭头表示 bug 在这里;
3. 错误类型是 SyntaxError,表示语法错误,
invalid syntax 是无效语法,说明变量定义出错了,仔细检查不难发现,变量命名错误,不能以数字开头。
这个报错提示说明:
1. 出错的行数是第2行;
2. 出错的具体代码是 print(name111);
3. 错误类型是 NameError,表示名称错误,
“name ‘name111’ is not defined”是名称“name111”未定义,仔细检查不难发现,我们定义的变量是 name 而不是 name111。
前面的学习,都是输出单一变量和字符串。但实际生活中,更普遍的是需要输出重复的文本模版的情况。
比如,刷卡购物时,如果卡内余额不足就会提示你:亲爱的XXX用户,您的余额还有XXX,不足以支付本次费用。
这可以理解为一个模版,文本内容一致,只有里面的XXX需要灵活替换。
处理这样的文本输出,我们会用到一种新的语法形式——格式化输出。
格式化输出 Formatted Output
如图所示,第1、4行代码分别对变量 name 进行了赋值;
第2、5行代码则是在两个字符串中分别填入了变量 name 的值,并输出这两个字符串。
代码小结
当我们要对一个字符串进行格式化输出时,就可以使用这样的格式
D选项正确。
A是打印数字,B是打印字符串,C是打印浮点数。
题目
写四行代码。
第一行把名字 “Downey” 赋值给变量 name。
后三行使用格式化输出分别输出:
“My name is Downey”
“Downey is a good boy”
“Downey likes playing football”
name = "Downey" print(f"My name is {name}") print(f"{name} is a good boy") print(f"{name} likes playing football")
学完格式化输出,我们知道了在输出字符串时,有些内容是可以灵活替换的。
接下来,继续来看看输出一段很长的字符串该如何调整。
根据已有的知识,如果把图中这段话分为四句输出,需要使用四次 print() 。
有没有什么办法可以使用一个 print() 就将字符串分行输出呢?
答案是肯定的。
编程的世界总是丰富多彩的,一个简单的字符往往能实现很多不同的功能。
在Python中,有一类特殊字符,叫转义字符,它们以反斜线 开头,能实现很多特别的功能,比如我们上面提到的换行。
转义字符 Escape Character
当字母 n 与反斜线 结合后,它们的含义和功能相比之前发生了转变,因此这样的字符被称为转义字符。
如图所示,除了 n 之外,转义字符还有很多。
但是我们在实际的编程学习中运用并不多,
大家可以稍作了解,不必记忆。
转义字符没有特殊的书写格式,在应用时是对后面的字符起作用的。
如图所示,我们用字符串 ➕ 换行符 n 的格式,
再次输出这句自我介绍。
转义字符以反斜线“”开头。
题目
请用字符串 ➕ 换行符 n 的格式,再次输出自我介绍。
我是Tony,
正在学习夜曲编程,
今天是第二课,
很高兴认识大家。
注意⚠️ ,输出的逗号和句号都是中文
print("我是Tony,n正在学习夜曲编程,n今天是第二课,n很高兴认识大家。")
本节课学习了变量与赋值。
我们来总结一下本课的知识点:
题目
转义字符
在“逗号”处,使用换行符 n 输出:
空山新雨后,
天气晚来秋。注意⚠️ ,输出的逗号和句号都是中文
print("空山新雨后,n天气晚来秋。")
格式化输出
使用格式化输出,分三行打印出:
I love Beijing
Beijing is a city
Beijing Tiananmen
city = "Beijing" print(f"I love {city}") print(f"{city} is a city") print(f"{city} Tiananmen")
减肥记录
分别输出y_weight、slogan、t_weight。输出结果为:
73
我要减肥
70.5
y_weight = "73" t_weight = "70.5" slogan = "我要减肥" print(y_weight) print(slogan) print(t_weight)
夜曲网吧
夜曲网吧近期在筹划一个充值优惠活动,准备给所有的会员群发消息。
消息格式为:
夜曲网吧有优惠,{name}速来
有一个会员的名字叫Tony,将他的名字赋值给变量name,然后使用格式化输出语句在屏幕输出他将收到的信息。
Tips:”夜曲网吧有优惠” 后面是一个中文逗号
name = "Tony" print(f"夜曲网吧有优惠,{name}速来")
格式化输出
将字符串”变量”赋值给 word,再使用 word 格式化输出以下句子:
今天我们学习了变量。变量能够存储不同的数据。变量格式化输出能便于计算机监测分析。