注释
注释是代码的解释型语言,不会影响代码执行,就是专门给程序员看的。
注释是很重要的代码组成部分!
# 单行注释
'''
多行注释
连续输入三个单引号
'''
"""
多行注释
连续输入三个双引号
"""
变量
变量是什么?
变量是用来记录事务状态的量值。
我们日常进入游戏,会发现游戏角色有游戏等级,游戏背包有形形色色的物品,游戏人物处于地图中的某个位置。这些变化的量,需要在程序运行中被记录下来。这就是变量的概念。
变量语法
变量名 = 变量值
# 注意:等号不是数学意义上的等号,而是赋值符号
# 意味着将右边的值赋予给左边的变量
eg:
name = 'leethon'
这样,就将变量值赋予了这个变量名,之后就可以从这个变量名找到这个变量值了
print(name)
# 运行结果==》leethon
变量底层机制
当我们运行代码时,所有的数据值都会存在我们的内存之中,但是内存像大海一样大,是GB级别的数据量,而刚才例子中的leethon
就几个字节(Bytes),想要找到这个数据值就像大海捞针一样难。
所以需要变量来存储这个数据值的地址,这个过程叫做关联。
要注意:
- 一个变量名同时只能关联一个变量值
- 而一个变量值却可能关联好几个变量值
- 变量名之间是无法相互关联的
我们来结合两个例子来理解。
num1 = 10
num2 = num1
print(num2)
# 问:此时num2关联的是什么
我们一条一条语句进行解析:
第一句:num1关联了10
第二句:num2关联了num1?错!因为两个变量名是不会关联的
所以是先看等号右边,num1会找到其关联的10,将其赋予num2,也就是num2也关联了10
x = 10
x = x + 1
print(x)
# 请问:运行结果是10还是11?
注意:=是赋值符号,不是数学意义上的等号,所以第二句不是10 = 11
而是将第一句中x关联的10 加上1然后再赋值给x,x同时只关联了1个值,第一句是10,第二句是11
变量名的命名规则
-
python解释器只能识别含字母、数字、下划线组合的变量名
-
数字不能作为变量名的开头
-
不要和语法中的关键字冲突
# 等号左侧是合法的变量名 name = 'leethon' num_1 = 10 _info = '信息' _ = '某值' # 等号左侧是不合法的变量名 num-1 = 10 1list = [] print = '关键字' ''' 其实可以将变量值赋予变量名print,但是关键字本身的功能会丧失 print()就变得不合法了 '''
ps:其实python支持汉字组合作为变量的名字,但是程序员一般不用,且在某些情况下容易出现报错
除此以外,还有一些语言习惯,是代码人需要所知道的。
首先,变量名需要做到见名知意,否则可能出现当我想要调用某个变量的时候,忘变量代表的意思,需要往前几十上百行的代码去翻找。
age = 18
# 当我想要调用age变量,就知道这个变量值的含义
x = 18
# 不知道这个x变量代表的意义,会给编程带来困惑。
其次,变量命名有几种常见的风格:
-
下划线式:单词之间用下划线连接 —— 这是python中常用的命名风格
eg:son_of_beach
-
驼峰体:单词首字母大写 —— 下面两种其他语言如JS就经常用
eg:SonOfBeach
-
小驼峰:除第一个单词外与驼峰体一致
eg:sonOfBeach
常量
常量顾名思义,它是不变化的量。
在日常的生活中,有一些描述量并不会频繁的变化,所以需要常量的概念用于记录。
如:国庆节是10月1号就不会变化。
在很多语言中,常量会绑定一个数据值,这个常量名就无法再绑定其他的数据值了。
但是!!
python中的常量就仅仅是个概念,与变量别无二致,
我们通常用字母全大写来区分常量和变量。
NATIONAL_DAY = '10月1号'
# 如果你遇到了全大写的变量,就自觉不要改动它的值了,如果改动的话:
NATIONAL_DAY = '十月一号'
print(NATIONAL_DAY)
# 运行结果:十月一号
# 会发现,这个常量的值也会重新绑定为新的值
所以,python中,不要瞎动全大写的变量,这是写这个变量的程序员在告诉你,这是常量,不能动。
数据类型
在记录变量或者常量时,数据值需要合适的类型进行记录,
比如等级可以用数字记录,
比如名字需要用文字记录,
在python中,有几个常用的数据类型需要掌握,能帮助我们更好的记录数据
而数据类型可以用一条指令type(数据或者变量)
来判断
数字类型int、float
int是数字整型,float是数字浮点型,对应是我们平常用的整数和小数
print(type(10))
# <class 'int'>
print(type(10.1))
# <class 'float'>
int和float在底层的存储方式是有区别的,但是在python中int和float的使用没有差别,作为普通的数字使用即可。
字符串str
字符串可以记录我们文字内容,包括字母、汉字等
name = 'leethon'
print(type(name))
# <class 'str'>
列表list
列表是用来记录多个不同的值的,它可以将这几个值存在一个变量里
# 对比以下两种存多个值的方式
name_list1 = "张三 李四 王二麻" # 字符串
name_list2 = ['张三', '李四', '王二麻'] # 列表
在存储上,两个姓名表好像差不多,那么为什么还要专门搞一个列表类型的数据呢?
这时就要抛出一个重要的思想:
对于数据,存,要千方百计的存,取,要轻易快速的取
所有数据的存储都是为了日后能快速的定位到我们想要的数据。
敲黑板,放图
那么列表有什么取数据的优势呢?
print(name_list2[0])
# 张三
print(name_list2[1])
# 李四
print(name_list2[2])
# 王二麻
print(name_list2)
# ['张三', '李四', '王二麻']
"""
变量名对应列表,变量名[下标]对应列表中的某个元素
我们可以用变量名取到整个列表,
也可以用 变量名[下标]取到任何一个元素
"""
最后整理一下列表的细节和特点:
-
列表用
[]
括起来,数据之间用逗号隔开list1 = [数据1,数据2,数据3,……] # list1变量存入列表数据类型
-
列表可以在一块连续空间有序存放几个不同的数据
-
列表取值可以按下标取,第一个元素的下标是从0开始的
-
列表的元素可以是另外一个列表,列表之间可嵌套
[1, 2, 3, [4, 5],[6,[7, 8]]] # 列表的嵌套
字典dict
列表可以让我们根据下标取到某一个元素的值,但是当一个列表的内容十分繁杂,如:
info = ['leethon', 18, 1.8, 'read']
# 以上这个列表的内容,如果不加以解释,很难区分这个字典每个元素的含义,即使能分辨含义,其取值方式info[0]也无法和元素含义相关联
所以就有一个字典的数据类型用于解决这一问题。
字典定义:
形式:大括号框柱,以k:v形式为键值对,每个键值对间用逗号隔开
{key: value, key2: value2, ……}
# 例子
info_dict = {'name': 'leethon',
'age': 18,
'height': 1.8,
'hate': 'read'
}
这样我们可以清晰的认识到18是年龄的意思,1.8是身高,阅读是这个人厌恶的事情。
但是,这么存好像更麻烦了,每个数据都多了一个描述信息,这时还是那句话:
存,要千方百计的存,取,要轻易快速的取
那怎么取呢?
name = info_dict['name']
print(name)
# leethon
# 只要用字典的变量名后面跟上[关键词]就可以取出相应的内容
待续。。
标签:10,变量,python,数据类型,列表,注释,print,变量名,name From: https://www.cnblogs.com/Leethon-lizhilog/p/16724124.html