最近学习了python3的语法,整理记录一下;
语法是编程的先决条件,精通语法是编好程序的必要条件;
给我最大的感受是:这个语言的编写,竟然不使用
{ }
来控制代码块的区域,而是使用缩进来分割代码块,因此使用python语言编写的代码不能压缩混淆。可以简写就简写,毫不拖泥带水
在python编程的世界里面,广为传颂的名言:Life is Simple ,I Use Python
;python语言相对于其余语言来讲,最大的特色是:简洁。为何呢?来看一个变量交互的例子:python
# 不少语言中,须要一个临时变量来交换 temp = x x = y y = temp # 在python中 x,y = y,x
python的功能很强大,能够作爬虫,自动化运维与自动化测试,大数据与数据分析(Spark),AI(机器学习 Tensor Flow),Web开发(Flask,Django),脚本处理。还能够跨平台运行,是面向对象的语言,又有动态脚本的特性(和Javascript同样,属于解释型语言,不用编译成二进制文件;编译型语言会编译成二进制文件供机器执行,相对而言运行效率高)。编程
python语言也被称做为:胶水语言,能够混合其余如C++,Java等来编程;能够把其余语言制做的各类模块(尤为是C/C++)很轻松的联结在一块儿。数据结构
很喜欢的两句话:app
# python 之禅 Simple is better than complex. 简洁胜于复杂; 这和Steve Jobs的苹果系列产品的理念是一致的 Now is better than never. Although never is often better than right now. 作也许好过不作,但不假思索就动手还不如不作; 勤于思考,分析致使问题的缘由,不作无用功
代码:是现实世界事物在计算机世界中的 映射;
写代码:是将现实世界中的事物用计算机语言来描述
Number(数字)运维
python3中的浮点数不分精度(单/双),整型不分短和长(short / long);布尔值必定是大写的True / False
;列表使用[ ]
,元组使用( )
,集合使用{ }
,字典使用{ k:v }
机器学习
type(1+1.0) # 1.1 float type(2 / 2) # 1.0 float type(2 // 2) # 1 int a = 123 # 不须要写变量的类型 isinstance(a,int) # True
上面代码里面,type()函数来检查变量的数据类型,也可使用isinstance
来判断一个变量是否属于这个类型;区别在于:函数
type()不会认为子类是一种父类类型。 isinstance()会认为子类是一种父类类型。
/
:表示除法,结果自动转为float类型; //
:表示整除,求的是整数部分,不会四舍五入;
声明变量不须要在前面写上变量的类型,直接写一个变量名就行,不像其余语言要标明数据类型,或者是写上var/ let/ const
工具
字符串是不可变的;这三种都是有序的
print("icessun"*3) >>> 'icessunicessunicessun' # 元组的重复 元组里面能够有不一样的数据类型 (1,‘1’,True,[1,2,4]) (1,2,3)*3 >>> (1,2,3,1,2,3,1,2,3) # 在元组后面添加元素 使用append()方法 b = [1,2,3] b.append(4) print(b) >>> [1,2,3,4] # 元组使用+相加 (1,2,3)+(2,3,4) >>> (1,2,3,2,3,4) # 列表的重复 ['ice','icess']*3 >>> ['ice','icess','ice','icess','ice','icess']
[起始位置,长度];截取从起始位置,长度个字符;
长度负数表示删除从字符串末尾往前数的字符个数;
长度省略表示到末尾;
长度要是超过可截取的位数,以可截取的位数为标准;学习
a = 'icessun' print(a[0:4]) >>> 'ices' print(a[0:-2]) >>> 'icess' print(a[0:]) >>> 'icessun' print(a[1:-0]) >>> ' ' # 表示截取了一个空字符串 print(a[1:0]) >>> ' ' # 表示截取了一个空字符串 print(a[:-4]) >>> 'ice' print(a[-4:]) >>> 'ssun' # 起始位置为负数是表示从末尾开始数(从1开始数)到末尾,要是起始位置是负数,那么步长必定省略,否者获得的是空字符串
# 都是经过索引来访问的 "icessun"[0] >>> 'i' ['a','b','c'][0] >>> 'a' ('a',2,True)[2] >>> True # 均可以使用len()这个函数来求长度
a = 'icessun' type(a[0:4]) >>> <class 'str'> ["ice","icess","icessun"][0] >>> 'ice' # 是字符串 ["ice","icess","icessun"][0:2] >>> ["ice","icess"] # 是列表
type( (1) ) >>> <class 'int'> type( ('a') ) >>> <class 'str'>
通常来讲:( )
能够表示元组,也能够表示数学运算的优先级;因此当想表示一个只有一个元素的元组,应该这样:( (1,) )
;在元素的 后面加上一个逗号;表示一个空的元组:( ( ) )
测试
无序的,不能经过索引访问,里面的元素不重复
1 in {1,2} >>> True 3 not in {1,2,3,4} >>> False
# 集合的差集 去掉相同的元素,之前面集合为标准,从一个集合里面去掉后面集合特有的元素 {1,2,3}-{2,3} >>> {1} {1,2,3}-{4} >>> {1,2,3} {1}-{4,2,3} >>> {1} # 集合的交集 找两个集合的公有元素 {1,2,3}&{2,3} >>> {2,3} {1,3}&{2} >>> set( ) # 表示空集 len(set()) -----> 0 # 集合的并集 把两个集合合并在一块儿,按照从前日后的顺序,去掉相同的元素 {1,2,4}|{2,3} >>> {1,2,4,3}
# 空集合的表示 set()
{ key : value},键值对的形式,相似于Javascript中的对象
int,str,元组
{ }