day02-Python基础语法
day02
1.注释
代码中不会被翻译成机器码的部分
代码 = 有效代码(会被翻译成机器码的部分)+注释(代码中不会被翻译成机器码的部分)
1.1注释的作用
a.对代码进行注解和说明
b.取消代码功能
1.2添加注释的方法
a.单行注释 - 在注释内容前加# (#号加空格),快捷键为ctr+/
# 这是单行注释
当需要在语句后进行注释时不能使用快捷键
print('123') # 这是单行注释
b.多行注释 - 将注释内容放在三个单引号(')开头三个单引号结束或三个双引号(")开头三个双引号结束的中间
'''
这是一行注释
这是第二行注释
'''
或者
"""
这是一行注释
这是第二行注释
"""
2.行和缩进
a.一条语句占一行,一行结束不需要写分号
print('hello')
print('world')
b.如果要将多条语句写在同一行,语句与语句之间必须写分号
print('hello'); print('world')
c.一行的开头不能随意添加缩进(包括空格和水平制表符)
3.标识符和关键字
3.1标识符
python命名要求,要求名字都是标识符
标识符要求:名字必须由字母、数字、下划线组成,且不能由数字开头
abc = 1
a1 = 2
b2_ = 3
_a = 4
"""
但不能是
7c = 5
d@ = 6
"""
3.2关键字
本身具有特殊意义或特殊功能的标识符就是关键字,关键字不能用来命名
print('hello world')
"""
print就是一个关键字,因此不能出现
print = 12
等情况
"""
打印python的所有关键字
from keyword import kwlist
print(kwlist)
在控制面板中得到:
[‘False’, ‘None’, ‘True’, ‘peg_parser’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘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’]
4.基本数据类型
4.1数字数据
意义:用来表示数值大小的数据就是数字数据
如:身高、年龄、体重、温度等
需要注意:电话号码,身份证号码等不可用于数值计算,不属于数字数据而属于文本数据
表示方法:和数学中表示数字的方式一致,比如:12,-23,3.14,3e4等
a = 12
b = -23
c = 3.14
d = 3e4
print(a, b, c, d)
类型(对数据的分类):整形(int),浮点型(float)
4.2文本数据
意义:用文字符号来表示信息的数据
表示方法:将文本数据放在单引号或双引号中间,例如:“四川”,“男”,"2022.12.13"等
tel = '123456789'
print(tel)
类型:字符串(str)
4.3布尔数据
意义:在程序中表示真假肯定或者否定,关系成立与否的数据,用True和False分别表示。(首字母必须大写)
a = 1
b = 2
c = a>b
print(c)
"""
结果为:
False
"""
类型:布尔数据(bool)
4.4空值
在程序中表示空、无、没有
表示方法:只有一个值:None
carNo = None
数据类型:空值(NoneType)
5.获取数据类型
使用type函数以获取数据的类型
调用方法:
type(数据)
print(type(None)) # <class 'NoneType'>
print(type('100.00')) # <class 'str'>
print(type(100.00)) # <class 'float'>
print(type(True)) # <class 'bool'>
6.类型转换
类型名(数据)— 将指定的数据转换为指定的类型
6.1其他类型转换为int
a.float转换为int
print(int(1.2345)) # 1
print(int(2.9999)) # 2
print(int(-2.999)) # -2
所有小数都可以转换为int,转换为int时保留整数部分而去掉小数部分
b.bool转换为int
print(int(True)) # 1
print(int(False)) # 0
所有布尔值都可以转换为int,True转换为1,False转换为0
c.str转换为int
print(int('3')) # 3
"""
print(int('3.1')) # 错误
print(int('hello')) # 错误
"""
字符串为整数可以转换为int,否则报错。
d.None转换为int
None不可转换为int
#print(int(None)) 错误
6.2其他类型转换为float
a.int转换为float
print(float(3)) # 3.0
print(float(-2)) # -2.0
b.bool转换为float
print(float(True)) # 1.0
print(float(False)) # 0.0
True转换为1.0
False转换为0.0
c.str转换为float
print(float('3')) # 3.0
print(float('3.1')) # 3.1
print(float('3e5')) # 300000.0
# 但是若字符串不为数字则不可以转换
# print(float('happy')) 错误
d.None转换为float
None不能转换为float
# print(float(None)) 错误
6.3其他类型转换为bool
print(bool('False')) # True ''里面有东西,转换为bool为True
print(bool('0.0')) # True
print(bool(0)) # False
print(bool(None)) # False
print(bool('')) # False
所有0值和空值都会转换为False,其他值都会转换为True。
注意:str转换为bool时若字符串不为空,则转换为True(例如bool(‘0’)为True)
7.输出函数
输出函数/打印函数(print):在控制台控制输出/打印数据
在控制台中看到的数据一定是程序中使用print打印的数据;如果想要将数据显示到控制台,必须要在程序中用print打印出来
7.1一次打印一个数据
print(100)
print('abc')
"""
100
abc
"""
7.2一次打印多个数据
print(100, 'abc', 2*10)
"""
100
abc
20
"""
7.3定制end
print打印数据的原理:每次执行print的时候会先将数据打印到控制台,然后再打印end的值(如果没有定制end,end默认是换行)
print(10,20)
print(30,40)
"""
10 20
30 40
"""
定制end:
# print(数据1, 数据2, 数据3,....., end=字符串)
print(100, end='+')
print(200, end='=')
print(100+200, end=';')
"""
100+200=300;
"""
7.4定制sep
sep控制同时打印多个数据的时候数据和数据之间的分割方式,默认为空格
print(10, 20, 30, 40, 50)
"""
10 20 30 40 50
"""
定制sep:
# print(数据1, 数据2, 数据3,....., sep = 字符串)
print('*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', sep='+')
"""
*+*+*+*+*+*+*+*+*+*+*
"""
定制end和定制sep可同时使用,其中end=字符串和sep=字符串的先后顺序可交换
print('1', '+', '2', '=', 1+2, sep='', end=';')
"""
1+2=3;
"""
8.输入函数
8.1 输入函数
input:在程序中获取从控制台输入的数据
a.程序中有多少个input,控制台就可以输入多少数据(每次输入数据以回车结束)
input()
input()
input()
input()
# 控制台可输入四次数据,例如:20 30 40 50
b.input的用法
变量 = input()
括号内可输入提示信息
name = input('输入我的名字')
但需要注意:
age = input("输入你的年龄")
print('My age is', age, type(age))
# 由此得到的age数据类型为str,不能参与运算
# 可以改为
age = int(input("输入你的年龄"))
print('My age is', age, type(age))