最近有许多小伙伴后台联系我,说目前想要学习Python,但是没有一份很好的资料入门 。一方面的确现在市面上Python的资料过多,导致新手会不知如何选择,另一个问题很多资料内容也很杂,从1+1到深度学习都包括,纯粹关注Python本身语法的优质教材并不太多 。
这份资料非常纯粹,只有Python的基础语法,专门针对想要学习Python的小白 。
注释Python中用#表示单行注释,#之后的同行的内容都会被注释掉 。
# Python中单行注释用#表示,#之后同行字符全部认为被注释 。复制代码
使用三个连续的双引号表示多行注释,两个多行注释标识之间内容会被视作是注释 。
""" 与之对应的是多行注释用三个双引号表示,这两段双引号当中的内容都会被视作是注释"""复制代码
基础变量类型与操作符Python当中的数字定义和其他语言一样:
#获得一个整数3# 获得一个浮点数10.0复制代码
我们分别使用+, -, *, /表示加减乘除四则运算符 。
1 + 1# => 28 - 1# => 710 * 2# => 2035 / 5# => 7.0复制代码
这里要注意的是,在Python2当中,10/3这个操作会得到3,而不是3.33333 。因为除数和被除数都是整数,所以Python会自动执行整数的计算,帮我们把得到的商取整 。如果是10.0 / 3,就会得到3.33333 。目前Python2已经不再维护了,可以不用关心其中的细节 。
但问题是Python是一个弱类型的语言,如果我们在一个函数当中得到两个变量,是无法直接判断它们的类型的 。这就导致了同样的计算符可能会得到不同的结果,这非常蛋疼 。以至于程序员在运算除法的时候,往往都需要手工加上类型转化符,将被除数转成浮点数 。
在Python3当中拨乱反正,修正了这个问题,即使是两个整数相除,并且可以整除的情况下,得到的结果也一定是浮点数 。
如果我们想要得到整数,我们可以这么操作:
5 // 3# => 1-5 // 3# => -25.0 // 3.0# => 1.0 # works on floats too-5.0 // 3.0# => -2.0复制代码
两个除号表示取整除,Python会为我们保留去除余数的结果 。
除了取整除操作之外还有取余数操作,数学上称为取模,Python中用%表示 。
# Modulo operation7 % 3# => 1复制代码
Python中支持乘方运算,我们可以不用调用额外的函数,而使用**符号来完成:
# Exponentiation (x**y, x to the yth power)2**3# => 8复制代码
当运算比较复杂的时候,我们可以用括号来强制改变运算顺序 。
# Enforce precedence with parentheses1 + 3 * 2# => 7(1 + 3) * 2# => 8复制代码
逻辑运算Python中用首字母大写的True和False表示真和假 。
True# => TrueFalse# => False复制代码
用and表示与操作,or表示或操作,not表示非操作 。而不是C++或者是JAVA当中的&&, || 和! 。
# negate with notnot True# => Falsenot False# => True# Boolean Operators# Note "and" and "or" are case-sensitiveTrue and False# => FalseFalse or True# => True复制代码
在Python底层,True和False其实是1和0,所以如果我们执行以下操作,是不会报错的,但是在逻辑上毫无意义 。
# True and False are actually 1 and 0 but with different keywordsTrue + True # => 2True * 8# => 8False - 5# => -5复制代码
我们用==判断相等的操作,可以看出来True==1,False == 0.
# Comparison operators look at the numerical value of True and False0 == False# => True1 == True# => True2 == True# => False-5 != False # => True复制代码
我们要小心Python当中的bool()这个函数,它并不是转成bool类型的意思 。如果我们执行这个函数,那么只有0会被视作是False,其他所有数值都是True:
bool(0)# => Falsebool(4)# => Truebool(-6)# => True0 and 2# => 0-5 or 0# => -5复制代码
Python中用==判断相等,>表示大于,>=表示大于等于,<表示小于,<=表示小于等于,!=表示不等 。
# Equality is ==1 == 1# => True2 == 1# => False# Inequality is !=1 != 1# => False2 != 1# => True# More comparisons1 < 10# => True1 > 10# => False2 <= 2# => True2 >= 2# => True复制代码
我们可以用and和or拼装各个逻辑运算:
# Seeing whether a value is in a range1 < 2 and 2 < 3# => True2 < 3 and 3 < 2# => False# Chaining makes this look nicer1 < 2 < 3# => True2 < 3 < 2# => False
注意not,and,or之间的优先级,其中not > and > or 。如果分不清楚的话,可以用括号强行改变运行顺序 。
推荐阅读
- 详解 Python 的二元算术运算,为什么说减法只是语法糖?
- 雷达模拟:用python的pygame实现和代码分析
- 如何实现一个优雅的Python的Json序列化库
- 教你在几分钟内构建一个Python包
- Mac 上安装 pyenv 使用多版本python开发项目
- 微信群总是有人发广告?看我用Python写一个机器人消灭他
- 用Python实现多层感知器神经网络
- Python 中的数字到底是什么?
- 如何建立一个完美的 Python 项目
- 用python制作炫酷的滚动地球