Python基础总结-01
九尺高台,起于垒土,学习任何一门技术都需要从原理入手,不仅要知其然,还要知其所以然。Python作为现行较为主流的编程语言,在大数据和人工智能方面具有较大的优势。不积跬步无以至千里,在此总结一点Python语言的基础学习感悟。
一、Python基础学习
语法
1、注释
单行注释:#
多行注释:""" """
2、标识符:标识符是用来命名的规范(变量名、函数名、类名)
要求:
(1)字母、数字、下划线组成,不能用数字开头;
(2)在Unicode编码中,除了ASCII码表中的字母、数字、下划线以外的部分不能作为标识符的一部分;
(3)python3.x规范中支持中文,在实际开发过程中,推荐采用Python2.x的规范
3、多行显示
(1)在需要换行的位置加\,然后换行(换行符不要破坏数据本身);
(2)如果是列表、字典、元祖、集合的值,可以直接换行
4、关键字
所有关键字如下:
['False', 'None', 'True', 'and', 'as', 'assert', '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']
数值类型
python中的数字类型有四个:整型(int)、浮点型(float)、布尔(bool)、复数(complex)
变量
变量就是存储数据的容器,变量先申明再使用
类型属于对象,变量是没有类型的
num=[1,2,3]
num=abcdefg
[1,2,3] 是 List 类型,"abcdefg" 是 Str类型,而变量 num是没有类型,仅仅是一个对象的引用(一个指针),可以是指向 List 类型对象,也可以是指向 Str类型对象。
运算符
Python中的运算符:数学运算符、比较运算符、逻辑运算符、赋值运算、位运算符
1、数学运算符:+、-、、/、%(取余)、//(取整)、(幂运算)
2、比较运算:>,<,==,!=,>=,<=
3、逻辑运算符: and,or,not (都是关键字) 优先级:not > and > or
4、赋值运算:=,+=,-=,=,/=,%=,//=,**=
二、python基础要点
1、数值类型:Python3的数据类型与C语言和Java的区别在于Python3中没有区分整型、长整型、单精度、多精度
2、变量申明:Python3的变量申明不需要申明变量的类型,而C语言和Java需要实现申明变量类型
3、内存占用情况:Python3不管变量的类型,先在内存中开辟一块空间存储该值,然后再将变量指向该值空间的地址;C语言和Java在变量申明指定了变量类型,不同类型的变量在内存中开辟的空间大小是固定的,且地址是不可变的
正是由于Python不区分长短整型、单双精度,所以不存在数据溢出的情况;
正是由于Python变量申明不需要指定数据类型,所以不存在强制类型转换;
正是由于Python变量在内存的存储方式,不存在内存空间浪费的情况;
以上三点,构成了Python在超大数据计算方面的优势,降低了代码编写方面的难度和门槛;
三、python基础感悟
1、python对缩进有严格的规范,要求同等级的代码对应的缩进必须一致
此种情况下报错:IndentationError: unexpected indent
a = 'duwangdan'
b = 'duwangdan'
print(a is b)
print(a is not b)
此种情况下正常运行:输出结果True、False
a = 'duwangdan'
b = 'duwangdan'
print(a is b)
print(a is not b)
2、不同类型之间可以转换,但并不是都能互相转换
print(bool(10))
print(int(12.5))
print(float(12))
print(complex(10))
print(bool(12))
结果为:
True
12
12.0
(10+0j)
True
3、逻辑运算:python中的任何数据类型都有逻辑值,所以逻辑运算符可以对所有数据进行操作,逻辑运算返回的值并不限定于True / False
不知Python语言为什么要这么设计??
a= 1 and 2
b= 0 and 1
c= None and 2
d= None or 1
e= 0 or 1
f= not 1
print(a,b,c,d,e,f)
结果为:2 0 None 1 1 False
网友评论