从Python3快速开始

本文针对于想尝试Python3的极客快速入门Python3的语法 ,仅仅归纳一些重点语法,详细可绕道至菜鸟教程

Python3 基本语法

引子

调用”print”函数打印数据:

1
2
3
print('Hello World!')
print("Hello World!")
print('Hello','World!')

字符串可以用单引号和双引号包裹。用逗号分开两个字符串时,python解释器会把它们分隔开打印。

输出结果都是 Hello World!

变量与强制数据类型转换

type和id关键字分别可以返回变量的数据类型和在内存中的标识

定义一些变量:

1
2
3
4
5
6
str1 = 'hello'
str2 = '5.21'
str3 = '110'
int1 = 10
bool1 = True
float1 = 3.14

可以用这样的结构进行强制数据类型转换:数据类型(变量)

1
2
3
int1 = '567'
print(type(int1))
print(type(str(int1)))

输出:

1
2
<class 'int'>
<class 'str'>

算数运算符

此处过于简单,直接上代码:

1
2
3
4
5
6
7
8
9
10
11
print(1 + 1)
print(5 - 1)
print(2 * 3) # 乘法
print(8 / 2) # 除法
print(11 // 2) # 除法只留整数
print(11 % 2) # 除法只留余数
print(2 ** 3) # 幂运算
print(9 // -4)
print(-9 // 4) # 向下取整
print(9 % -4) # 公式:余数=被除数-除数*商
print(-9 % 4) # 3=-9-4*(-3)

输出:

1
2
3
4
5
6
7
8
9
10
11
2
4
6
4.0
5
1
8
-3
-3
-3
3

一些语法糖

以下每组中的代码意义相同:

1
2
a += 30
a = a + 30
1
2
a -= 30
a = a - 30
1
2
a *= 30
a = a * 30
1
2
a /= 30
a = a / 30
1
2
a //= 30
a = a // 30

以此类推…

可以这样连续声明变量:

1
2
a, b, c = 20, 30, 40
a = b = c = 20

可以这样输出多个字符串:

1
print("=" * 100)

总之,Python以易用性为理念设计,语法糖数之不尽。

各种运算符

这里搬了隔壁菜鸟教程的表格

比较运算符

运算符 描述 实例
== 等于 - 比较对象是否相等 (a == b) 返回 False。
!= 不等于 - 比较两个对象是否不相等 (a != b) 返回 True。
> 大于 - 返回 x 是否大于 y (a> b) 返回 False。
< 小于 - 返回 x 是否小于 y。所有比较运算符返回 1 表示真,返回 0 表示假。这分别与特殊的变量 True 和 False 等价。注意,这些变量名的大写。 (a < b) 返回 True。
>= 大于等于 - 返回 x 是否大于等于 y。 (a>= b) 返回 False。
<= 小于等于 - 返回 x 是否小于等于 y。 (a <= b) 返回 True。

位运算符

运算符 描述 实例
& 按位与运算符:参与运算的两个值,如果两个相应位都为 1, 则该位的结果为 1, 否则为 0 (a & b) 输出结果 12 ,二进制解释: 0000 1100
按位或运算符:只要对应的二个二进位有一个为 1 时,结果位就为 1。
^ 按位异或运算符:当两对应的二进位相异时,结果为 1 (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
~ 按位取反运算符:对数据的每个二进制位取反,即把 1 变为 0, 把 0 变为 1。**~x** 类似于 -x-1 (~a) 输出结果 -61 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式。
<< 左移动运算符:运算数的各二进位全部左移若干位,由 “<<” 右边的数指定移动的位数,高位丢弃,低位补 0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
>> 右移动运算符:把 “>>” 左边的运算数的各二进位全部右移若干位,”>>” 右边的数指定移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111

身份运算符

运算符 描述 实例
is is 是判断两个标识符是不是引用自一个对象 x is y , 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(x) != id(y) 。如果引用的不是同一个对象则返回结果 True,否则返回 False。

重点

== 和 != 单纯是比较数据本身是否相等

is 和 is not 则是比较变量在内存中指向对象的地址

函数

语法格式:

1
2
def 函数名(参数):
return 返回值

重点:

可以在函数中使用:

1
global 变量

这样可以在函数中定义一个全局变量,即使在外部也可以访问。

小结:关于Python本身

  1. 调包侠,几乎任何开发需求都可以通过 pip 或者 conda ,安装库之后直接调用函数就可以,非常的方便
  2. 使用广泛,可以开发GUI应用,甚至还有许多基于Python的前端框架
  3. 脚本小子的晋升途径,科研狗必备
  4. 于是,我还是拿它当个玩具吧(阉割大量语法,习惯了C++等语言的朋友会感到开发体验很差,但是写写脚本还是没问题的)