字面量
- 掌握字面量的含义
- 了解常见的字面量类型
- 基于print语句完成各类字面量的输出
什么是字面量?
字面量:在代码中,被写下来的固定的值,称之为字面量。
常用的值类型:
python中常用的有6种值(数据)的类型
字符串:
字符串(string),又称文本,是由任意数量的字符如中文、英文、各类符号、数字等组成。所以叫做字符串。
如:
- "python"
- "我喜欢学习"
- "!@#$%^&*()"
- "我的代号是9527"
python中,字符串需要用双引号" "包围起来,被引号包围起来的,都是字符串。
我们目前前期需要学习的数据类型有:
注释
- 了解注释的作用
- 能够使用单行注释和多行注释
注释的作用:
注释:在程序代码中对程序代码进行解释说明的文字。
作用:注释不是程序,不能被执行,只是针对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性。
注释的分类:
- 单行注释:以#开头,#右边的所有文字当做说明,而不是真正要执行的程序,起辅助说明作用
# 这是单行注释
print("hello,world")
- 多行注释:以一对三引号引起来("""注释内容""")来解释说明一段代码的作用使用方法
"""
这是多行注释
我要输出一首歌的歌词
"""
print("塞纳河畔,左岸的咖啡。")
print("我手一杯,品尝你的美。")
print("留下唇印的嘴。")
变量
- 理解变量的作用级特征
- 掌握变量的定义方式
什么是变量?
变量:在程序运行时,能储存计算结果或表示值的抽象概念。简单的说,变量就是在程序运行时,记录数据用的。
变量的定义格式:
变量名 = 变量值
- 每一个变量都有自己的名称,称之为:变量名,也就是变量本身
- 赋值,表示将等号右侧的值,赋予左侧的变量
- 每一个变量都有自己储存的值(内容、数据),称之为:变量值
变量的特征:
变量,从名字中可以看出,表示“量”是可变的。所以,变量的特征就是,变量存储的数据,是可以发生改变的。
为什么必须要使用变量?都是输出内容,直接输出不行吗?
答:变量的目的是存储运行过程的数据,存储的目的是为了:重复使用
print语句如何输出多份内容?
print(内容1,内容2,内容3,......,内容N)
python中如何做算数运算?
直接使用加(+)、减(-)、乘(*)、除(/)
练习:求钱包余额
请在程序中,定义如下变量
- 钱包余额(变量名:money),初始余额:200
请通过程序计算,在购买了:
- 香烟50元
- 螺蛳粉10元
后,钱包余额还剩多少元。
参考代码:
# 定义钱包变量,并初始化变量值
money = 200
print("当前钱包余额:200元")
print("购买香烟,花费:50元")
print("吃螺蛳粉,花费:10元")
print("最终,钱包剩余:",money - 50 - 10)
数据类型
- 掌握使用type()语句查看数据的类型
- 理解变量无类型而数据有类型的概念
在学习字面量的时候,我们了解到:数据是有类型的。
目前在入门阶段,我们主要接触如下三类数据类型:
string、int、float这三个英文单词,就是类型的标准名称。
我们可以通过type()语句来得到数据的类型:
语法:
type(被查看类型的数据)
- 在print语句中,直接输出类型信息:
print(type("python"))
print(type(9527))
print(type(3.1415926))
- 在变量存储type()的结果(返回值)
string_type = type("python")
int_type = type(9527)
float_type = type(3.1415926)
print(string_type)
print(int_type)
print(float_type)
变量有类型吗?
我们通过type(变量)可以输出类型,这是查看变量的类型还是数据的类型? 查看的是:变量存储的数据的类型。因为,变量无类型,但是它存储的数据有。
数据类型转换
- 掌握如何在字符串、整数、浮点数之间进行相互转换
- 了解转换的注意事项
为什么要转换数据类型?
数据类型转换,将会是我们以后经常使用的功能。 如:
- 从文件中读取的数字,默认是字符串,我们需要转换成数字类型
- 后续学习的input()语句,默认结果是字符串,若需要数字也需要转换
- 将数字转换成字符串用以写出到外部系统
- 等等
常见的转换语句
同前面学习的type()语句一样,这三个语句,都是带有结果的(返回值) 我们可以用print直接输出 或用变量存储结果值。
类型转换注意事项:
- 任何类型,都可以通过str(),转换成字符串
- 字符串内必须真的是数字,才可以将字符串转换为数字
以下代码无法进行转换:
v_str = "python"
num = int(v_str)
以下代码可以进行转换:
v_str = '123'
num = int(v_str)
print(num,type(num))
今日练习
- 定义4个变量,需求:姓名:孙悟空,年龄:1000岁,技能:筋斗云、72变,主要战绩:大闹天宫。
- 定义变量,c1 = "牛奶",c2 = "可乐"
python代码把c1的内容调整为可乐,c2的内容调整为牛奶
(提示:两个数的交换)
name = "孙悟空"
age = "1000岁"
skill = "筋斗云、72变"
Stats = "大闹天宫"
c1 = "牛奶"
c2 = "可乐"
# 转换内容
c1,c2 = c2,c1
print(c1,c2)
标识符
- 理解什么是标识符
- 掌握标识符的命名规则
- 掌握变量的命名规范
什么是标识符?
在python中,我们可以给很多东西起名字,比如:
- 变量的名字
- 方法的名字
- 类的名字,等等
这些名字,我们把它统一的称之为标识符,用来做内容的标识。
所以,标识符:
是用户在变成的时候所使用的一系列名字,用于给变量、类、方法等命名。
python中,标识符命名的规则主要有3类:
- 内容限定
- 大小写敏感
- 不可使用关键字
标识符命名中,只允许出现:
- 英文
- 中文
- 数字
- 下划线(_)
- 不推荐使用中文
- 数字不可以开头
运算符
- 算数(数学)运算符
- 赋值运算符
算数(数学)运算符
参考代码:
print("1 + 1的结果是:%d" % (1 + 1))
print("3 - 1的结果是:%d" % (3 - 1))
print("1 * 3的结果是:%d" % (1 * 3))
print("10 / 2的结果是:%d" % (10 / 2))
print("9 // 2(9整除2)的结果是:%d" % (9 // 2))
print("9 %% 2(9余2)的结果是:%d" % (9 % 2))
print("2的6次方的结果是:%d" % (2 ** 6))
赋值运算符
复合赋值运算符
字符串
字符串的三种定义方式
字符串在python中有多种定义形式:
- 单引号定义法:name = 'python'
- 双引号定义法:name = "python"
- 三引号定义法:name = """python"""
三引号定义法,和多行注释的写法一样,同样支持换行操作。 使用变量接收它,它就是字符串 不使用变量接收它,就可以作为多行注释使用。
字符串的引号嵌套
- 单引号定义法,可以内含双引号
- 双引号定义法,可以内含单引号
- 可以使用转义字符(\)来将引号解除效果,编程普通的字符串
字符串拼接
- 掌握如何拼接字符串
如果我们有两个字符串(文本)字面量,可以将其拼接成一个字符串,通过+号即可完成,如:
print("python" + "简单易学")
不过一般,单纯的2个字符串字面量进行拼接显得很呆,一般,字面量和变量或变量和变量之间会使用拼接,如:
name = "python"
print("我是一名" + name + "程序员")
既然,字符串和变量能进行拼接,我们来完成一个小需求:
定义2个变量
- name,内容是:python程序员
- address,内容是:深圳湾1号
要求写程序通过print语句以及字符串拼接的方式输出:
我是python程序员,我的地址是:深圳湾1号
参考代码:
name = "python程序员"
address = "深圳湾1号"
print("我是:" + name + ",我的地址是:" + address)
字符串格式化
- 掌握通过占位符的形式拼接字符串(字符串格式化)
我们会发现,之前使用+号来拼接的字符串一点都不方便
- 变量过多,拼接起来实在是太麻烦了
- 字符串无法和数字或其他类型完成拼接
我们可以通过以下语法,完成字符串和变量的快速拼接
name = "python程序员"
address = "深圳湾1号"
print("我是%s,我的地址是%s" % (name,address))
其中的,%s
- %表示:我要占位
- s表示:将变量变成字符串放入占位的地方
所以,综合起来理解就是,先用%站一个空位,等一会传进来一个变量,把变量放到这个空位中。
最常用的占位符有如下3类:
如下代码,完成字符串、整数、浮点数三种不同类型变量的占位:
name = "屌丝"
age = 38
money = 59.49
print("我是%s,今年%d岁,我的钱包余额还剩:%f元。" % (name,age,money))
格式化精度控制
- 掌握格式化字符串的过程中做数字的精度控制
数字精度控制
我们可以使用辅助符号"m.n"来控制数据的宽度和精度
- m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效
- .n,控制小数点精度,要求是数字,会进行小数的四舍五入
示例:
- %5d:表示将整数的宽度控制在5位,如数字11,被设置为5d,就会变成:[空格][空格][空格]11,用三个空格补足宽度。
- %5.2f:表示将宽度控制为5,将小数点精度设置为2
- 小数点和小数部分也算入宽度计算。如,对11.345设置了%7.2f 后,结果是:[空格][空格]11.35。2个空格补足宽度,小数部分限制2位精度后,四舍五入为 .35
- %.2f:表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35
参考代码:
name = "屌丝"
age = 38
money = 59.49
print("我是%s,今年%d岁,我的钱包余额还剩:%.2f元。" % (name,age,money))
其中,%.2f表示小数点保留2位小数
字符串格式化方式2
- 掌握快速字符串格式化的方式
通过语法:f"内容{变量}"的格式来快速格式化,参考代码:
name = "屌丝"
age = 38
money = 59.49
print(f"我是{name},今年{age}岁,我的钱包余额还剩:{money}元。")
对表达式进行格式化
- 了解什么是表达式
- 掌握对表达式进行字符串格式化
表达式:一条具有明确执行结果的代码语句
如:
1 + 1、5 * 2就是表达式,因为有具体的结果,结果是一个数字,又或者,常见的变量定义:
name = "屌丝" age = 10+23
等号右侧的都是表达式呢,因为它们有具体的结果,结果赋值给了等号左侧的变量。
参考代码:
print("1 * 1的结果是:%d" % (1 * 1))
print(f"1 * 1的结果是:{1 * 1}")
print(f"字符串在python中的类型是:%s" % type("python"))
练习:股价计算小程序
定义如下变量:
- name,公司名
- stock_price,当前股价19.99
- stock_code,股票代码008888
- stock_price_daily_growth_factor,股票每日增长系数,浮点数类型,比如2.2
- growth_days,增长天数7天,经过7天的增长后,股价达到了多少钱
- 使用字符串格式化进行输出,如果是浮点数,要求小数点精度2位数。
name = '某某公司'
stock_price = 19.99
stock_code = '008888'
stock_price_daily = 2.2
growth_days = 7
sum = stock_price * stock_price_daily ** growth_days
print(f'单位名称:{name},股票代码:{stock_code},当前股价:{stock_price}')
print(f'每日增长系数是:{stock_price_daily},经过{growth_days}天的增长后,股价达到了:%.2f' % sum)
数据输入
- 掌握input语句(函数)的使用
如何在python中做到读取键盘输入的内容呢?这里就需要使用input语句了。
我们前面学习过print语句(函数),可以完成将内容(字面量、变量等)输出到屏幕上。 在Python中,与之对应的还有一个input语句,用来获取键盘输入。
- 数据输出:print
- 数据输入:input
使用上也非常简单:
- 使用input()语句可以从键盘获取输入
- 使用一个变量接收(存储)input语句获取的键盘输入数据即可
input()语句可以在要求使用者输入内容前,输出提示内容的,参考代码:
name = input("请输入你的姓名:")
print(f"hello,{name}")
input接收到的所有数据,都是字符串类型的数据。
练习:欢迎
定义两个变量,用来获取从键盘输入的内容,并给出提示信息:
- 变量1,变量名:name,记录用户名称
- 变量2,变量名:vip,记录用户的vip
name = input("请输入您的姓名:")
vip = int(input("请输入您的VIP等级(1~5):"))
print(f"您好:尊敬的{name},您是尊贵的VIP:{vip}级用户,欢迎您的光临。")