从Python3快速开始
本文针对于想尝试Python3的极客快速入门Python3的语法 ,仅仅归纳一些重点语法,详细可绕道至菜鸟教程。
Python3 基本语法
引子
调用”print”函数打印数据:
1 | print('Hello World!') |
字符串可以用单引号和双引号包裹。用逗号分开两个字符串时,python解释器会把它们分隔开打印。
输出结果都是 Hello World!
变量与强制数据类型转换
type和id关键字分别可以返回变量的数据类型和在内存中的标识
定义一些变量:
1 | str1 = 'hello' |
可以用这样的结构进行强制数据类型转换:数据类型(变量)
1 | int1 = '567' |
输出:
1 | <class 'int'> |
算数运算符
此处过于简单,直接上代码:
1 | print(1 + 1) |
输出:
1 | 2 |
一些语法糖
以下每组中的代码意义相同:
1 | a += 30 |
1 | a -= 30 |
1 | a *= 30 |
1 | a /= 30 |
1 | a //= 30 |
以此类推…
可以这样连续声明变量:
1 | a, b, c = 20, 30, 40 |
可以这样输出多个字符串:
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 | def 函数名(参数): |
重点:
可以在函数中使用:
1 | global 变量 |
这样可以在函数中定义一个全局变量,即使在外部也可以访问。
小结:关于Python本身
- 调包侠,几乎任何开发需求都可以通过 pip 或者 conda ,安装库之后直接调用函数就可以,非常的方便
- 使用广泛,可以开发GUI应用,甚至还有许多基于Python的前端框架
- 脚本小子的晋升途径,科研狗必备
- 于是,我还是拿它当个玩具吧(阉割大量语法,习惯了C++等语言的朋友会感到开发体验很差,但是写写脚本还是没问题的)