第二章 python基础语法

第二章 Python基础语法

2.1 字面量

概念:字面量是指在代码中被写下来的固定的值。

  • python常用的有6种值(数据)的类型
  1. 数字(Number)
    • 整数(int):10,-10等。
    • 浮点数(float):13.14,5.21等。
    • 复数(complex):4+3j,以j结尾表示复数。
    • 布尔(bool):真和假,True表示真,False表示假。
  2. 字符串(String)
    • 字符串:描述文本的一种数据类型,由任意数量的字符组成,又称文本,需要用“ ”包裹起来。
  3. 列表(List)
    • 列表:有序的可变序列,最常使用,可有序记录数据。
  4. 元组(Tuple)
    • 元组:有序的不可变序列,可有序记录不可变的python数据集合。
  5. 集合(Set)
    • 集合:无序不重复集合,可无序记录不重复的python数据集合。
  6. 字典(Dictionary)
    • 字典:无序Key-Value集合,可记录Key-Value型python数据集合。
  • 代码中如何描述字面量
123456
13.14
"学习python"

#输出字面量
print(123456)
print(13.14)
print("学习python")

2.2 注释

  • 注释:在代码程序中对程序代码进行解释说明的文字

  • 注释的作用:增强程序的可读性

  • 使用注释

    • 单行注释:以#开头,其右边所有文字都为注释,起辅助说明作用。

      # 单行注释
      
    • 多行注释:以一对三引号引起来(“”“注释内容”“”)来解释说明某一段代码,支持换行。

      """多行
         注释
      """
      print("多行注释")
      

2.3 变量

变量:在程序运行时,能储存计算结果或能表示值的抽象概念。

变量的作用:记录数据

变量的特征:变量的值可以改变

变量的定义

  • 变量名 = 变量值:等号表示赋值,表示将等号右边的值,赋予左侧的变量
# 定义一个变量,用来记录钱包余额
money = 50
# 通过print语句,输出变量记录的内容
print("钱包还有:", money)

# 买了一个冰淇淋,花费10元
money = money - 10
print("买了冰淇淋钱包还有:", money , "元")

2.4 数据类型

  • 入门阶段主要学习的数据类型
类型描述说明
string字符串类型用引号引起来的数据都是字符串
int整型(有符号)数字类型,存放整数
float浮点型(有符号)数字类型,存放小数
  • 验证数据的类型

使用type( )语句查看数据的类型:type(被查看类型的数据)

# 1.直接输出类型信息
print(type("学习python"))
print(type(123456))
print(type(13.14))

# 输出
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
<class 'str'>
<class 'int'>
<class 'float'>
# 2.用变量存储type()的结果(返回值)
string_type = type("学习python")
int_type = type(123456)
float_type = type(13.14)
print(string_type)
print(int_type )
print(float_type)
# 3.查看变量中存储的数据类型,查看的是数据的类型
name = "暮夏十二"
name_type = type(name)
print(name_type)
  • 理解变量无类型,数据有类型

    python中变量没有类型,但它存储的数据有类型

2.5 数据类型转换

  • 为什么要进行数据类型转换?
  1. 从文件中读取的数字,默认是字符串,需要转换成数字类型
  2. input()语句,默认结果是字符串,若需要数字也需要转换
  3. 将数字转换成字符串用以写出到外部系统
  • 字符串、整数、浮点数之间的转换
  1. 常见的转换语句
语句(函数)说明
int(x)将x转换为一个整数
float(x)将x转换为一个浮点数
str(x)将对象x转换为字符串

注意:这三个语句都有返回值,可以用print输出或者用变量存储结果。

  1. 代码编写
# 将数字类型转换成字符串,任何类型都可以通过str转换成字符串
num_str = str(123)
print(type(num_str), num_str)
float_str = str(13.14)
print(type(float_str),float_str)

# 将字符串转换成数字,要确保字符串内容都是数字
num = int("11")
print(type(num), num)
number = float("13.14")
print(type(number), number)

# 整数转浮点数
float_num = float(11)
print(type(float_num), float_num)

# 浮点数转整数,不是四舍五入,会丢失精度,即小数部分。
int_num = int(13.14)
print(type(int_num), int_num)

2.6 标识符

  • 什么标识符

    标识符:变量的名字、方法的名字、类的名字等统称为标识符,用来做内容的标识。

  • 标识符的命名规则

    • 内容限定:命名中只允许出现英文、中文(不推荐❌)、数字、下划线_ 。(数字不可以用在开头)

      # 如果用数字开头,会出现报错:语法错误
      SyntaxError: invalid decimal literal
      # 用关键字的话,也会出现报错
      SyntaxError: invalid syntax
      
    • 大小写敏感:区分大小写

    • 不可使用关键字

      关键字:False、True、None、and、as、assert、break、class、continue、def、del、elif、else、except、finally、for、from、global、if、import、in、is、lambda、nonlocal、not、or、pass、raise、return、try、while、with、yield

  • 变量的命名规范

    • 明了:看到名字知道是什么意思
    • 简洁:确保明了的情况下减少名字的长度
    • 下划线命名法:多个单词组合变量名,用下划线做分隔
    • 英文字母全小写:变量中的英文字母,应全部小写。

2.7 运算符

  • 算术运算符
运算符描述实例
+两个对象相加 a + b 输出结果30
-得到一个负数或是一个数减去另一个数 a - b 输出结果 -10
*两个数相乘或返回一个被重复若干次的字符串 a * b 输出结果 200
/b / a 输出结果 2
//取整除返回商的整数部分 9 // 2 输出结果 4,9.0 // 2.0 输出结果 4.0
%取余返回除法的余数 b % a 输出结果 1
**指数a ** b 为 2 的 3 次方,输出结果 8
print("1 + 1 =", 1 + 1)
print("2 - 1 =", 2 - 1)
print("3 * 3 =", 3 * 3)
print("4 / 2 =", 4 / 2)
print("11 //2 =", 11 // 2)
print("9 % 2 =", 9 % 2)
print("2 ** 3 =", 2 ** 3)

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
1 + 1 = 2
2 - 1 = 1
3 * 3 = 9
4 / 2 = 2.0
11 //2 = 5
9 % 2 = 1
2 ** 3 = 8
  • 赋值运算符
=赋值运算符把=右边的结果赋给左边的变量,如num=1+2*3,结果num=7

复合赋值运算符

运算符描述实例
+=加法赋值运算符c += a等价于c = c + a
-=减法赋值运算符c -= a等价于c = c - a
*=乘法赋值运算符c *= a等价于c = c * a
/=除法赋值运算符c /= a等价于c = c / a
%=取模赋值运算符c %= a等价于c = c % a
**=幂赋值运算符c **= a等价于c = c * * a
//=取整除赋值运算符c //= a等价于c = c // a

2.8 字符串扩展

2.8.1 字符串的三种定义方式

  1. 单引号定义法:name = ’ 学习python '。
  2. 双引号定义法:name = " 学习python "。
  3. 三引号定义法:name = " " " 学习python " " ",支持换行操作;若不使用变量接收它,可作为多行注释使用。

2.8.2 字符串的引号嵌套

定义的字符串包含:单引号、双引号呢?

  1. 单引号定义法:可以内含双引号
  2. 双引号定义法:可以内含单引号
  3. 可以使用转义字符(\)来将引号解除效用,变成普通字符串
# 在字符串内包含双引号
name = '"学习python"'
# 在字符串中包含的单引号
name1 = "'学习python'"
# 使用转义字符 \ 解除引号的效用
name2 = "\"学习python\""
name2 = '\'学习python\''

2.8.3 字符串拼接

两个字符串(文本)字面量,可以通过+拼接成一个字符串,例如:

print("学习"+"python")

一般情况下,字面量和变量或变量和变量之间会使用拼接,例如:

name = "python"
print("开始学习" + name + "编程知识")

#输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
开始学习python编程知识

注意:字符串没有办法通过+和非字符串类型进行拼接

2.8.4 字符串格式化

通过占位的形式拼接字符串 %s

  • %表示:要占位
  • s表示:将变量变成字符串放入占位的地方
name = "python"
message = "开始学习 %s" % name
print(message)

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
开始学习 python
# 字符串和数字类型拼接
# 多个变量占位,变量要用括号括起来,并按照占位的顺序填入。
study_m = 5
avg_salary = 12345
message = "python大数据学科,学习%s个月,平均薪资:%s" % (study_m, avg_salary)
print(message)

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
python大数据学科,学习5个月,平均薪资:12345

占位符有三类:

格式符号转化
%s将内容转换成字符串,放入占位位置
%d将内容转换成整数,放入占位位置
%f将内容转换成浮点型,放入占位位置
name = "学习python"
study_year = 2024
study_time = 5.5
message = "开始%s,开始时间:%d,学习时长:%f天" % (name,study_year,study_time)
print(message)

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
开始学习python,开始时间:2024,学习时长:5.500000

2.8.5 格式化的精度控制

使用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。

2.8.6 字符串格式化方式2

字符串格式化快速写法

语法:f"内容{变量}"的格式来快速格式化

特点:不限制类型、不做精度控制

适合:对精度没有要求的时候快速使用

name = "学习python"
study_year = 2024
study_time = 5.5
print(f"开始{name},开始时间:{study_year},学习时长:{study_time}天")

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
开始学习python,开始时间:2024,学习时长:5.5

2.8.7 对表达式进行格式化

  • 表达式:一条具有明确执行结果代码语句

    例如:1+1、5*2就是表达式,或者常见的变量定义,等号右侧的都是表达式

  • 直接格式化表达式:无需使用变量进行数据存储的时候适用,可以简化代码

print("1 * 1的结果是:%d" % (1 * 1))
print(f"1 * 1的结果是:{1 * 1}")
print("字符串在python中的类型是:%s" % type('字符串'))

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
1 * 1的结果是:1
1 * 1的结果是:1
字符串在python中的类型是:<class 'str'>

2.9 数据输入

input语句:用来获取键盘输入

  • 数据输出:print
  • 数据输入:input,使用input( )语句可以从键盘获取输入,使用一个变量接收(存储)input语句获取的键盘输入数据。
print("请告诉我你是谁?")	#提示语句
name = input()
print("我知道了,你是%s" % name)

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
请告诉我你是谁?
学习python的学生
我知道了,你是学习python的学生

input( )语句可以在要求使用者输入内容前,输出提示内容:

name = input("请告诉我你是谁?")
print("我知道了,你是%s" % name)

# 输出结果
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
请告诉我你是谁?学习python的学生
我知道了,你是学习python的学生
# 输入数字类型
num = input("你学习python多久了:")
print("类型是:", type(num))

# 输入结果:说明input()语句把输入的内容当做字符串
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
你学习python多久了:5
类型是: <class 'str'>

# 数据类型转换
num = input("你学习python多久了:")
num = int(num)
print("类型是:", type(num))

# 输出结果:
D:\dev\python\python3.10.4\python.exe D:/Projects/PycharmProjects/pythonProject/test1.py
你学习python多久了:5
类型是: <class 'int'>
  • 12
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值