程序=数据+功能
我们学习编程语言的目的是为了控制计算机能够像人一样去做事
所以说,编程语言中出现的所有的语法都是为了控制计算机能够像人一样去做xxx事
一、注释:
1.多行注释
加在哪?
通常加在整个文件的开头,用于对文件进行整体性的说明
可以有多少个?
所以说通常一个文件只有一个多行注释
“”“
注释1
注释2
注释3
"""
2. # 单行注释
print('hello') # 单行注释,PEP8规范 通常写在代码的上方或者后面
# 暂时注释掉不想运行的代码,被注释掉的代码不会运行
二、变量
1.什么是变量?
量指的是事物的状态。
变指的是事物的状态是可以发生变化的。
变量就是可以变化的量,量指的是事物的状态,比如人的年龄、性别,游戏角色的等级、金钱等等
变量是一种机制,什么机制呢?
变量是一种存取内存的机制。 这种机制/语法可以把事物的状态记录下来,并且以后可以取出来改变。
2.为什么要用变量?
为了让计算机能够像人一样去记忆事物的某种状态,并且状态是可以发生变化的。
程序执行的本质就是一系列状态的变化,变是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序执行时状态,以及状态的变化。
3.怎么用变量?
3.1 变量的基本使用原则
原则:先定义,后引用
定义的语法:变量名 = 变量值 name="egon"
引用变量的语法: print(name)
补充:程序出错有两种
( 1)、语法错误(SyntaxError):不允许犯语法错误,必须在程序运行前改正====>直接报错
prit("hello1")
print("hello2")
print("hello3"
print("hello4")
print("hello5")
(2)、逻辑错误:逻辑上的错误只能在程序运行前被python解释器发现,应该尽量把逻辑写到完美。====>运行前2行,第三行报错
print("hello1")
print("hello2")
print(age)
age = 18
print("hello4")
print("hello5")
3.2、变量的定义由三大部分组成
变量名:用来访问变量值
赋值符号:将变量值的内存地址绑定给变量名
变量值:就是我们记录的事物的状态,也就是存到内存中的数据 ps: age=18
print(age)
补充:
左值:变量名如果在等号的左边,是存值
右值:变量名不在等号左边,是取值
![在这里插入图片描述](https://www.icode9.com/i/ll/?i=95796cb27940493eaaaf6d2f211a0bd9.png?,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTcxNDE5OA==,size_16,color_FFFFFF,t_70) 3.3变量名详解:
3.3.1大原则:见名知意
3.3.2变量名的命名规范
1. 变量名只能是 字母、数字或下划线的任意组合
2. 变量名的第一个字符不能是数字
3. 不能使用python关键字,常用关键字如下
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from','global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
3.3.3变量名的命名风格
风格一:驼峰体
AgeOfTony = 56
NumberOfStudents = 80
风格二:纯小写字母加下划线(在python中,变量名的命名推荐该方式)
age_of_tony = 56
number_of_students = 80
补充: age 不加引号是一个变量名,代表的是取值行为
"age" 加上引号是一种变量值
3.3.4变量值的三大特性:
****id身份****
x = age
print(id(age))
print(id(x))
****type类型****
print(type(age))
value
反应的是变量在内存中的唯一编号,内存地址不同id肯定不同
三、常量
不能被改变的量
AGE = 18
AGE = 19
print(AGE)
变量值详解:变量值都有哪些常用类型,每一种类型都可以用来记录什么样的状态----》基本数据类型
四、基本数据类型
1.int整型:记录年龄、等级、号码等整数相关
age=18
2.float浮点型:记录薪资、身高、体重等小数
salary=3.1
3.str字符串类型:记录名字、性别、一段话等描述性质的内容
定义:在引号内包含一串字符,引号可以是''、""、""" """、''' '''
name="tony"
msg="两只黄鹂鸣翠柳
一行白鹭上青天"
print(type(name))
print(type(msg))
4.list列表型:按照位置存放多个任意类型的元素
0 1 2 3
l = [111,3.333,"aaaa",[666,777]]
print(l[1])
print(l[3])
print(l[-1][0])
hobbies = "read music movie"
hobbies = ["read", "music", "movie"]
print(hobbies[1])
练习:取出第二名学生的第二个爱好
students_info = [['egon', 18, ['play', 'music']], ['alex', 18, ['play', 'sleep']]]
print(students_info[1][2][1])
5.dict字典型:按照key:value的形式存放多个任意类型的value
定义:在{}内用逗号分割开多个key:value,其中value可以是任意类型,而key通常是字符串类型
info = {
"name": 'egon',
"age": 18,
"gender": 'male',
"level": 20,
"salary": 10
}
print(info["age"])
不好:
names = {
"name1":"张三",
"name2":"李四",
"name3":"往屋内”
}
推荐: names = ["张三","李四","往屋内"]
info = {
"name": 'egon',
"age": 18,
"gender": 'male',
}
info = ['egon',18,'male']
print(info['age'])
练习:所有同学的信息存下来
students_info = [
{"name": 'egon', 'age': 18, 'hobbies': ["read", 'music']},
{"name": 'tom', 'age': 19, 'hobbies': ["play", 'music', 'movie']},
]
print(students_info[1]['hobbies'][-1])
6、布尔类型:True,False,用来记录真假两种状态
通常不是直接定义的,而是通过比较运算得到的
tag = True
print(10 > 3)
print("egon" == "egon")
用途:但凡结果为布尔值的操作,都是要当做条件用
ps:布尔值分为显式与隐式两种
(1)显式的布尔值:结果明确为True和False的
tag = True
print(10 > 3)
print("egon" == "egon")
if 10 < 3:
print('ok')
else:
print('no')
(2)隐式的布尔值:结果看上去并不是布尔值,但是python解释器在背后会将其解析为True或False
所有的数据当条件都是隐式的布尔值,只需要记住0、None,空 对应的隐式的布尔值为False,其余都为tRUE
if "":
print('ok')
else:
print('no')
x = len("abcdef")
print(x)
x = print("hello")
print(x)