2017年10月份开始,就已经学习 python, 中间断断续续,也没有记笔记,所以效果不好。就像烧水一样,十分钟能烧开,每次都烧五分钟,凉了,又去烧,来来回回,一直是五分钟水平!
这次理论与实践结合了!
学习资料来源---廖雪峰的官方网站
数据类型和变量
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在 python 中,能够直接处理的数据类型有以下几种:
1、整数和浮点数
整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-3456,0,等等。
浮点数,浮点数也就是小数,之所以称为浮点数,是因为按照科学计数法表示时,一个浮点数的小数点位置是可变的。但是对于很大或者很小的浮点数,就必须用科学技术法表示,把10用e替代。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
2、字符串
字符串是以单引号或双引号括起来的任意文本。如果 ' 本身也是一个字符,那就可以用 "" 括起来。
如果字符串内部既包含 ' 又包含 " 怎么办?可以用转义字符 \ 来标识,比如:
'I \'m \"OK\"!'
转义字符 \ 可以转义很多字符,比如 \n 表示换行,\t 表示制表符,字符 \ 本身也要转义,所以 \ 表示的字符就是 \,可以在 python 的交互命令行 print() 打印字符串看看:
print ('I\'am ok.')
I'am ok.
print('I\'m learning\npython.')
I'm learning.
python.
print('\\\n\\')
\
\
如果字符串内部有很多换行,用 \n 写在一行里不好阅读,为了简化,Python允许用'''...'''的格式表示多行内容:
交互式命令行内输入(提示符由>>>变为...,...
不是代码的一部分):
...line2
...line3''')
line1
line2
line3
如果写成程序并存为 .py 文件,就是:
line2
line3''')
3、布尔值(类似于R中的逻辑值)
布尔值和布尔代数的表示完全一致,一个布尔值只有 True、False 两种值,要么是True,要么是 False,在 Python中,可以直接用True、False 表示布尔值(注意大小写),也可以通过布尔运算计算出来:
>>>True
True
>>>False
False
>>>3>2
True
>>>3>5
False
布尔值也可以用 and,or 和 not 运算。
and 运算是 与 运算,只有所有都为 True,and 运算结果才是 True;
or 运算是 或 运算,只要其中一个为 True, or 运算结果就是 True;
not 运算是 非 运算,它是一个单目运算符,把 True 编程 False,False 变成 True。
布尔值经常用在条件判断中,比如:
if age>=18:
print("adult")
else:
print("teenager")
4、空值
空值是 python 里的一个特殊的值,用 None 表示。None 不能理解为0,因为0是有意义的,而 None 是一个特殊的空值。
此外, Python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型。
5、变量
变量的概念基本上和初中代数的方程变量一致的,只是在计算机程序中,变量不仅可以是数字,还可以是任意数据集类型,变量名必须是大小写英文、数字和_的组合,且不能用数字开头,比如:
a = 1 #变量 a 是一个整数
t_007 = "T007" #变量 t_007 是一个字符串
Answer = True #变量 Answer 是一个布尔值 True
在 Python 中,等号 = 是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量。
这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。
和静态语言相比,动态语言更灵活,就是这个原因。
6、常量
所谓常量就是不能变的变量,不如常用的数学常数 π 就是一个常量。在 Python 中,通常用全部大写的变量名表示常量:
PI = 3.14... #只是习惯用法,想改也可以
7、除法特殊性
除法计算结果是浮点数,即使是两个整数恰好整除,结果也是整点数:
3.0
// 称为地板除,两个整数的除法仍然是整数,只是整数部分:
>>>10//3
3
同时,也产生了余数运算,两个整数相除的余数:
>>>10%3
1
网友评论