Day1
初学Python基础语法:
1. 字面量
字面量: 在程序中被写下来的固定的值,就是字面量
整数(int):10 -10 等
小数(float):3.14 -3.14等
字符串(str):'中国' '中国人'等
布尔(bool):True 和 False
示例:
print(10)
print(3.1415926)
print('中国人')
print(True)
print(False)
2. 注释
注释:对代码进行解释说明的文字,不会影响程序运行
分类:单行注释(# 注释内容)和多行注释(""" 注释内容 """)
示例:
"""
单行注释: #
多行注释: 三引号
"""
# 用print输出整数10到控制台
print(10)
# 用print输出浮点数据3.1415926到控制台
print(3.1415926)
# 用print输出字符串'中国'到控制台
print('中国')
"""
注意:布尔值只有两个真和假
真: True
假: False
"""
print(True) # 输出布尔结果真
print(False) # 输出布尔结果假
3. 变量
变量:在程序运行中,用于存储计算结果的抽象概念
定义格式:变量名 = 变量值
解释:把=后面的变量值赋值给=前面的变量名(从右往左)
示例:
# 变量格式: 变量名=变量值
# 需求: 定义一个钱包变量存储10元钱,然后又挣了20元,打印出最终金额
money = 10
print(money) # 钱包初始金额10元
money = money + 20
print(money) # 钱包最终金额为30元
4. print函数
print():输出函数,把想要输出到控制台的内容放到括号中
输出一个内容:print(内容)
输出多个内容:print(内容1 , 内容2...)
注意:每个print后面,默认有一个换行操作 end='\n'
示例:
# print输出多个内容,用逗号分隔
print(10, 3.1415926, '中国', True, False)
# 观察上述效果:所有内容都在一行上
# 每个print后面默认有一个换行操作
print('中国', end='\n')
print('中国人', end='\n')
# 需求: 把两个字符串'中国'和'中国人'打印到一行上
# 方式1: 使用逗号
print('中国', '中国人')
# 方式2: 分别打印两个字符串,但是把第一个换行符去掉或者变成空格等其他符号
print('中国', end='-')
print('中国人')
5. type函数
type():查看数据类型的函数,把指定数据放到括号中,就能获取到对应的数据类型
注意: 变量本身没有类型,只是存储的数据有类型
示例:
# type查看指定数据的类型 格式: type(指定数据)
print(10, type(10))
print(3.14, type(3.14))
print('中国', type('中国'))
print(True, type(True))
print(False, type(False))
# type查看变量的类型 格式: type(变量名)
# 注意: type查看变量类型本质查看的是变量记录的数据的类型
# 变量没有类型,而变量记录的数据有类型
print(type('张三')) # <class 'str'>
name = '张三'
print(type(name)) # <class 'str'>
6. 字符串定义
方式1:一对引号 "内容" 或者 '内容'
方式2:一对三引号 """内容""" 或者 '''内容'''
注意:三引号方式既可以是字符串也能作为注释,而且支持换行操作
示例:
# 方式1: 一对双引号
s1 = "中国"
print(s1)
# 方式2: 一对单引号
s2 = '程序员'
print(s2)
# 方式3: 三引号
s3 = """中国的程序员"""
print(s3)
s4 = '''中国的程序员'''
print(s4)
7. 数据类型转换
转换成字符串:str(数据)
注意: 任何类型数据都能转换为字符串类型
转换成整数:int(数据)
注意: 只有字符串中是整数才能转换为整数,否则报错
注意: 小数转整数,损失精度
转换成浮点数:float(数据)
注意: 只有字符串中是整数或者小数才能转换为浮点数,否则报错
示例:
# 1.任何数据都能转换为字符串 格式: str(数据)
# 整数10转为字符串'10'
print(10, type(10)) # 10 <class 'int'>
s1 = str(10)
print(s1, type(s1)) # 10 <class 'str'>
# 浮点数3.14转为字符串'3.14'
print(3.14, type(3.14)) # 3.14 <class 'float'>
s2 = str(3.14)
print(s2, type(s2)) # 3.14 <class 'str'>
# 2.字符串转为整数 注意: 只有字符串中是整数才能转换,否则报错
# 字符串'10'转为整数10
print('10', type('10')) # 10 <class 'str'>
a = int('10')
print(a, type(a)) # 10 <class 'int'>
# 3.浮点数转为整数 注意: 小数点后面内容会丢失
c = int(3.88)
print(c, type(c)) # 3 <class 'int'>
# 4.字符串转为浮点数 注意: 只有字符串中是整数或者浮点数才能转换,否则报错
# 字符串'10'转为整数10
print('3.14', type('3.14')) # 3.14 <class 'str'>
b = float('3.14')
print(b, type(b)) # 3.14 <class 'float'>
8. 标识符命名规则和规范
标识符:在代码中为类,函数,变量起的名字,就是标识符
命名规则(必须遵守):
组成:数字、字母、下划线(_)、中文(不建议)
注意:不能以数字开头 不能是关键字 区分大小写
命名规范(最好遵守):
变量:见名知意 全部字母小写 多个单词的时候用下划线命名法
其他规范:
小驼峰命名法 :userName='张三'
大驼峰命名法 :UserName='张三'
示例:
"""
标识符命名规则:
标识符组成: 字母,数字,下划线(_),中文(不建议)
注意: 不能以数字开头 区分大小写 不能用关键字
"""
a = 10
b = 20
he = a + b
print(a, b, he) # 10 20 30
# 演示不能以数字开头
# 1a = 100 # 此行报错
# 演示不能是关键字
# and = 200 #此行报错
# 演示区分大小写
C = 100
# print(c) # 此行报错
"""
标识符命名规范
建议变量命名: 见名知意 英文字母全部小写 下划线命名法(多个单词用下划线分隔)
其他规范: 小驼峰命名法(userName) 大驼峰命名法(UserName)
"""
user_name = '张三'
product_name = '小米'
print(user_name, product_name)
9. 运算符
算术运算符: +:加、-:减、*:乘、/:除法(结果是小数)、 //:取整数商、%:取余数、**:幂次方
赋值运算符: =
举例:a = 10 就是把10赋值给变量a
复合赋值运算符:+=、-=、*=、/=、//=、%=、**=
示例练习:
# 加法运算符运用
a = 10
b = 20
he = a + b
print(a, b, he) # 10 20 30
# 赋值运算符运用: =
money = 10
# 复合赋值运算符运用: += -= *= /= //= %= **=
money += 20
print(money) # 30
money -= 20
print(money) # 10
money *= 3
print(money) # 30
money /= 3
print(money) # 10.0
money //= 3
print(money) # 3.0
money %= 3
print(money) # 0.0
money **= 3
print(money) # 0.0
10. 字符串嵌套和拼接
嵌套:单引号和双引号能相互套用
注意:如果就套用一个引号,需要加\转义符
拼接:+号能拼接多个小字符串成一个大字符串
字符串嵌套练习:
# 演示单引号嵌套双引号
print('My name is "litianlun"')
# 演示双引号嵌套单引号
print("My name is 'litianlun'")
# 转义符: \
print("I'm is 'wuchangbin'")
字符串拼接练习:
# 要求打印格式: 我是: 中国人,我的地址是:中国
name = '中国人'
address = '中国'
print('我是:' + name + ' ,我的地址是:' + address )
11. 字符串格式化[重点]
方式1:print打印多个内容,用逗号连接
方式2:+拼接多个小字符串,弊端:必须统一类型字符串
方式3:%s给字符串,整数,浮点占位
原理:把整数和浮点都转换为字符串了
方式4:%s:字符串占位 %d:整数占位 %f:浮点数占位
注意:%d和%f可以用x.y做精度控制
ps:控制精度格式为: %x.yf
方式5重点:f"...{变量名}..."
注意:也可以用:x.y做精度控制
ps:控制精度格式为f"...{变量名:x.yf}..."
ps:x为数字的宽度设定,y为小数的位数设定
示例练习:
"""
需求: 要求定义三个变量,分别存储姓名,年龄,身高,
要求最终打印格式: 我的姓名是xx,年龄是xx,身高是xx厘米
"""
name = '张三'
age = 18
height = 188.8888
# 方式1: print打印多个内容,多个内容直接默认用逗号分隔,同时结果中默认会加上空格分隔
print('我的姓名是', name, '年龄是', age, '身高是', height, '厘米')
# 方式2: 先用+号把多个小字符串拼接成一个大字符串,然后print最终打印一个大字符串
# 注意: 如果不是字符串,需要手动使用str()转换为字符串
print('我的姓名是 ' + name + ' 年龄是 ' + str(age) + ' 身高是 ' + str(height) + ' 厘米')
# 方式3: print直接打印一个大字符串里面用%s占位,然后把对应的变量自动变成字符串放到对应的位置
print('我的姓名是%s,年龄是%s,身高是%s厘米' % (name, age, height))
# 方式4: print直接打印一个大字符串,里面字符串用%s占位,整数用%d占位,小数用%f占位
# 注意: %f这种形式接收浮点数的时候,默认保留6位小数,不够,用0补全
print('我的姓名是%s,年龄是%d,身高是%.2f厘米' % (name, age, height))
# 方式5: pirnt直接打印一个大字符串,格式是f"...{变量名}..."
# 注意: 如果是浮点数,默认原样输出,如果想要保留某位小数,可以使用:.yf
print(f'我的姓名是{name},年龄是{age},身高是{height}厘米')
print(f'我的姓名是{name},年龄是{age},身高是{height:.2f}厘米')
表达式练习:
# 需求: 输出效果: 1*2的结果是2
# 定义变量
i = 6
j = 9
# 方式1: print打印多个内容
print(i, '*', j, '的结果是', i * j)
# 方式2: +拼接字符串再打印
print(str(i) + '*' + str(j) + '的结果是' + str(i * j))
# 方式3: %s占位符拼接
print('%s*%s的结果是%s' % (i, j, i * j))
# 方式4: %d占位符拼接
print('%d*%d的结果是%d' % (i, j, i * j))
# 方式5: format格式化
print(f'{i}*{j}的结果是{i * j}')