Python之python基础一
一、你所应当知道的一些基础的基础。。。。
(一)计算机基础。
cpu:相当于人的大脑,运算与控制中心。 速度 飞机
内存:4G,8G,16G....暂时存储,供给cpu数据。
速度 高铁。成本高,断电即消失。
硬盘:相当于你电脑的数据库,存储着大量数据,文件,小电影。
速度:走。 成本低,永久保存。
操作系统:执行者,支配所有关系。windows,linux,cenos,.
(二)python的历史。
Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。
python2x,python3x,区别。
python2x:源码混乱,重复代码较多,冗余。
()
python3x:源码规范,崇尚优美清晰,简单。
(三)开发语言的分类:
计算机是不能理解高级语言的,更不能直接执行高级语言,它只能直接理解机器语言,所以使用任何高级语言编写的程序若想被计算机运行,都必须将其转换成计算机语言,也就是机器码。由此高级语言也分为编译型语言和解释型语言
而这种转换的方式有两种:
1)编译:
特点:
在编译型语言写的程序执行之前,需要一个专门的编译过程,把源代码编译成机器语言的文件,因为只需编译一次,以后运行时不需要编译,所以编译型语言执行效率高。
因为一次性全部编译,所以程序运行效率极高
程序在编译阶段就会报错
2)解释:解释型语言不需要事先编译,在程序执行的时候逐行解释,解释一行就读取一行
特点:因此程序会在执行的阶段报错
程序执行的效率没有编译型语言高
(四)Python解释器种类以及特点
CPython:官方解释器,这个解释器是用C语言开发的,所以叫 CPython,在命名行下运行python,就是启动CPython解释器,CPython是使用最广的Python解释器。
IPython:IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的,好比很多国产浏览器虽然外观不同,但内核其实是调用了IE。
PyPy:PyPy是另一个Python解释器,它的目标是执行速度,PyPy采用JIT技术,对Python代码进行动态编译,所以可以显著提高Python代码的执行速度。
Jython:Jython是运行在Java平台上的Python解释器
IronPython:IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码
另外:对于Python的编译,除了可以采用以上解释器进行编译外,还可自行编写Python解释器,但这需要高超的技术。
(五)变量名和函数名的命名规则
1,变量必须由数字,字母,下划线任意组合。
2,变量不能以数字开头。
3,变量不能是python中的关键字。
4,变量要具有可描述性。
5,变量不能是中文。
6,变量不能太长。
7,官方推荐:
驼峰体
下划线体
二、正餐开始
(一)格式化输出
第一种:%s,%r,%d
第二种:字典键值对占位
(二)运算符
and,or,not
优先级:()> not > and > or 同一个优先级,从左至右依次计算。
规则:x or y if x True,则 return x,否则 return y
(三)数据类型转换:
int ---> bool 非0即True,0为False
bool---> int True 1 False 0
bool--->str :可以任意转化
str--->bool:
空字符串 False
其他都是True
(四)if-else和while语句:
1.if-els语句:
第一种结构:
if 条件:
结果
第二种结构:
if 条件:
结果
else:
结果
第三种结构:
if choice == '2':
elif choice == '6':
elif choice == '3':
第四种结构:
if choice == '2':
elif choice == '6':
elif choice == '3':
else:
第五种结构:
if 条件:
if 条件:
结果
else:
结果
else:
结果
2. while语句。
while 条件:
结果
跳出循环的条件:
1,改变条件。
2,break。
break : 结束循环。
continue:结束本次循环,继续下一次循环。
(三)编码
ascii:初期密码本,只包含数字、字母,特殊符号。只有8位
unicode:万国码
初期:16位,2个字节表示一个字符
但是随着国家的增多和扩充,逐渐的不够用了
例如中国的汉字就只能存储2*16==65536,不能显示全部的汉字。
中期:32位,4个字节表示一个字符
缺点:造成资源的浪费
在ASCII和Unicode的基础之上,升级的utf-8出来了
UTF-8:
英文:8位,1个字节表示一个字符。
欧洲 拉丁文:16位,2个字节表示一个字符。
亚洲 中国:24位,3个字节表示一个字符
gbk国标:只包含中文、英文。
英文:8位,1个字节表示一个字符
中文:16位,两个字节表示一个字符。
(四)bit_length()的用法:转化成二进制的位数
1 0000 0001
2 0000 0010
3 0000 0011
4 0000 0100
三、基础数据类型:
(一)字符串:
1.索引、切片、步长
str[起始索引:截止索引:步长]
区别:
索引:索引出来的数据类型是自己的数据类型
切片:切片出来的数据类型是原str的数据类型
步长和方向步长:
当切片的索引是逆向索引时,步长只能为负

浙公网安备 33010602011771号