#数据类型与变量

##上节回顾
1.微信浏览器 --> 辣鸡
最好把链接复制到浏览器打开
不要直接用微信的浏览器
2.python安装+卸载1秒搞定.
3.笔记工具渲染插件
在压缩包里面有个渲染插件.记得装上!!!
4.回复处理消息 +好友
我们班300多号人 --> 消息有点多
上班之后都会回复处理大家的消息
提交作业的时候.99+是基操.
如果我很久不回复你.可能是看漏.你再发个消息

5.网站推荐
	1.http://c.biancheng.net/python/base/ 
	2.http://www.cxy521.com/
6.所有的笔记,录播,软件都在群公告的网盘里!!!
7.百度网盘加速方式 --> 我没弄过,各位可以群里讨论
	1 油猴插件  
	2 https://greasyfork.org/zh-CN 安装一个脚本 搜索 百度网盘      
	3.下载 aria2 这个软件

##交互模式与脚本模式
python有两种开发模式:
交互模式 --> 默认进入python环境/idle里面就是进入的交互模式.类似于人类说话一样,一问一答. 代码是一行行运行的.表现形式为>>>
优点:用起来比较方便.即问即答.适合测试一些小的代码
缺点:不能保存/修改

脚本模式/文件模式 --> 新建一个文件来写代码.写好之后可以保存起来反复使用.修改起来也很方便
		优点:可以修改/保存

在idle中如何新建文件

file --> new file --> 按下ctrl + s保存
在保存文件时.要注意 1.要有文件名 2.选择好保存路径

运行程序快捷键是F5.也可以点击
run --> run module

这节课开始.往后我们主要用的都是脚本/文件模式!!!

##程序员必备修养 – 写注释
注释 = 说明文档.使用说明.让别人看你代码的时候可以更好理解里面的意思
注释是给开发人员看的.不会参与到程序的运行

python有两种注释方式:
	1.单行注释 --> 用#符号表示.在#后面的内容都是注释
		# 注释内容
		# 大家晚上好,你们喝热水了吗?

		# 这是一个输出语句,输出了666
		print(666)
	
		print('多喝热水') # 注释也可以写到代码的右边
	2.多行注释 --> 用未被使用的三引号表示. (三引号 = 三对单/双引号)
		'''
		我是一个多行注释
		我里面的内容不会运行
		'''
		
		"""
		我也是多行注释
		双引号也可以.
		"""

学习阶段时的注释规范.可以应用在你们后续的作业中:
	'''
	项目名称: 
	项目描述:
	项目环境: 
	作者所属:
	'''
注释还有一种用法.有一段代码我不想它运行,但是又不想删掉它.就可以把它注释掉

##何为变量
变量: 可以改变的东西,数据(年龄,余额,发际线,温度,体重)
程序里的变量 --> 数据的容器,存数据的 --> 操作计算机的本质就是和数据打交道

一个变量是由三个东西组成的:
	1.数据类型(type)
	2.内存地址(id)
	3.值(value)

可以把变量想象成是一个仓库:
	数据类型 --> 仓库类型
	内存地址 --> 仓库位置
	变量值 --> 仓库里放的东西

变量名(标识符)的命名是有规则,规范的.可以参考现实,正常人的名字是不可以随便取
	沈666 --> 不合法
	沈*&^ --> 不合法
	人民币 --> 有特别的含义
乱取名字是不行的,要符合特定的规则规范.给变量取名的时候也要多注意

变量命名规范:
	1.一般是由数字,字母,下划线组成(中文也行,但不推荐)
	2.首字符不能是数字,不能数字开头
	3.符号只能用下划线_.不能用别的符号
	4.变量名区分大小写
	5.不要用/不推荐用关键字,有特别含义的数据命名
		强调: 不要给print input type这些功能函数赋值!!!
		强调: 不要给print input type这些功能函数赋值!!!
		强调: 不要给print input type这些功能函数赋值!!!
	6.见名知意 --> 一眼就可以认出来,这个数据有什么用

a = '麒麟'
b = 177.5 
c = 99

name = '麒麟'
age = 18
height = 177.5

比较主流好用的命名方式 --> 驼峰命名法 --> 单词首字母大写
	大驼峰 --> 所有单词的首字母都大写 --> FindWindow / SendMessage
	小驼峰 --> 第一个单词首字母小写,后面的单词首字母大写 --> userName
						 							userAge

一定要注意变量/注释的规范,合理性 --> 在项目开发过程中大部分时间其实不是在敲代码,而是读代码 --> 代码的可读性很重要

##变量的基本使用
1.声明变量: 把右边的数据赋值给左边的变量名.以后这个变量就相当于这个数据
变量名 = 变量值
money = 10086
height = 177.5
phone_number = 19120412127
name = ‘麒麟’ # 记得中文要有引号

声明多个变量时.用逗号隔开
	变量名,变量名 = 变量值,变量值
	name,age = '麒麟',18
	a = 1
	b = 2
	# a,b = 1,2
	print(a,b)

2.使用变量
	直接输出变量名
	print(变量名) # 直接打变量名就好,不用加引号
	print(name)

	输出多个变量时.用逗号隔开
	print(变量名,变量名)
	print(name,age)

3.用input给变量赋值
	变量名 = input() #会把用户输入的数据赋值给变量
	name = input()
	name = input('请输入你的名字')

变量并不是凭空生成的 --> 我们声明了一个变量后 --> python会在内存里开辟一个空间,把变量放进去
声明变量: 在内存里开辟了一个空间,存放变量值,并连接给变量名
重要: 变量名和变量值不是放在一起的.它们是连接起来的

变量的本质 --> 把数据保存起来,方便后续使用

##顺序执行
程序是由上往下顺序执行
age = 18
print(age) # 18
age = 99 # 这个99就覆盖了原有的18
print(age) # 99

##基本数据类型
吃饭: 饭用碗来装 水用杯子装 菜用盘子装
为什么要区分容器 --> 不同的东西,用法用处是不一样的

不同的数据,需要不同的容器来保存.容器的区别就是它们存的东西不一样

为什么要有数据类型 --> 更好的管理/操作数据

有一个功能函数,可以获取一个数据/变量是什么类型
	type(变量)
	type(数据)
	print(type(name))
	print(type(666))

int-整形/整数

int 整数,没有小数点的数字 0 520 70 10086 -1 -2 
用来帮助我们存储一些整数数据: 人数,年龄,点赞数,头发数量

声明方式:
	变量名 = 整数值
	age = 18
	stu_52 = 300

float-浮点型/小数

float 带小数的的数字 0.0  6.6 5.20 -1.1 1.0
用来帮助我们存储一些浮点数据: 身高,体重,余额

声明方式:
	变量名 = 浮点值
	money = 888.88
	print(money)
	print(type(money))

浮点型的计算是不精准的.如果要精确计算可以用decimal库实现
0.3-0.2不为0.1  浮点数据转换为二进制时会丢失精度

bool-布尔类型 判断类型

bool 判断型 只有两个值  True/真/1
					 False/假/0

布尔类型是主要用来做判断的一种类型.用True表示真,用False表示假
	1+1 > 2  # False
	666 > 520 # True

声明方式:
	变量名 = True
	变量名 = False
	大家很棒 = True
细节:
	1.布尔值可以作为数值来运算.也算数值类型的一种 T为1 F为0
	2.一定要记住!!! 单词首字母要大写

##基本算数运算符
python可以直接进行算数运算
+ - (乘) /(除)
% 取余数 10%3 = 1 --> 原理 10-3-3-3一直到减不下为止,还剩多少.余数就是几
// 整除 10//3 = 3 --> 原理 10-3-3-3一直到减不下为止,减了多少次.整除数就为几
** 取幂 3**3 原理 --> 3
3*3

##python序列类型 – 字符串
str 字符串 --> 保存一些字符(汉字,数字,字母,符号) --> 姓名,地址,菜单

表现形式为: 用一对引号包裹起来的数据
		用单双三引号都行
		用单双没区别.可以用来保存一行字符串
		用三引号可以一次性写多行内容

定义方式:
	变量名 = '字符串'
	变量名 = "字符串"
	变量名 = '''   字符串 '''
	name = '七零'
	talk = '七零@#$123asd'

a = '''
	床前明月光,
	疑是地上霜,
	举头望明月,
	低头思故乡
	'''

引号不能混用
	name = '麒麟老师" #会报错

单双引号的嵌套使用:
	print("麒麟老师说:"大家记得多喝热水哈"") # 报错.里面有两对双引号.python不会识别
	print('麒麟老师说:"大家记得多喝热水哈"') # 把外层的引号改为单引号

字符串支持*号输出的.原理是把字符串复制了n遍
	print('多喝热水'*70)

字符串支持+拼接.但必须双方都是字符串
	print('七零' + '很帅')

1 + 1 # 结果为2
'1' + '1' # 结果为 '1 1'
1 + '1' # 报错.整数和字符串不能相加

##作业
1.声明变量给自己建立个角色信息,并输出
姓名
年龄
身高
家乡
兴趣
tips: 年龄为int类型 身高为float类型 其余都为字符串类型

2.使用print() 输出 20 * 5 的结果

3.填空题:
	a = 520     a的类型为__
	b = 'True'  b的类型为__
	c = '520'   c的类型为__
	d = 6.66    d的类型为__
	e = 0.0		e的类型为__
	f = true	f的类型为__
	g = False	g的类型为__

4.使用input,输入一句'多喝热水'

5.现有变量a = 1 b = 2.在不给他们单独赋值的情况下.交换两者的值.
	不能直接a = 2 && b = 1

最后结果为b=1  a=2
不能像下面这样:
a,b = 1,2
a = 2
b = 1

小提示:
1.用一个第三方变量
2.用数学运算
3.用python的特殊机制!!

定个惩罚 --> 第四题写错了的.手写第四题正确代码  20遍