老师突如其来的爬虫测试让人心里倍生无助感,最后虽说用Java勉强完成了测试,但也乱入进了python领域。算了,python现在这么火,早晚得入门,不如就现在吧。
主要介绍刚刚入门的一些基础的语法知识,至于前期的环境搭建和IDE的下载,网上教程很多且大多切实可用,这里不再赘述,下面开始介绍基本的,与其他编程语言不一样的语法基础。
一、注释
单行注释(用 ‘#’ )
1
# 注释内容
多行注释(三个双引号或单引号包围)
1
2
3
4
5
6
7
8"""
第一行注释
第二行注释
"""
'''
第一行注释
第二行注释
'''
二、变量
定义变量,变量名自定义,满足标识符命名规则。
1 | # 变量名 = 值 |
三、数据类型
举例:
1 | num1 = 1 # 整数型 |
四、输出
1、格式化输出
转换说明符 | 解释 |
---|---|
%d、%i | 转换为带符号的十进制整数 |
%o | 转换为带符号的八进制整数 |
%x、%X | 转换为带符号的十六进制整数 |
%e | 转化为科学计数法表示的浮点数(e 小写) |
%E | 转化为科学计数法表示的浮点数(E 大写) |
%f、%F | 转化为十进制浮点数 |
%g | 智能选择使用 %f 或 %e 格式 |
%G | 智能选择使用 %F 或 %E 格式 |
%c | 格式化字符及其 ASCII 码 |
%r | 使用 repr() 函数将表达式转换为字符串 |
%s | 使用 str() 函数将表达式转换为字符串 |
%s,%d,%f较为常用。
技巧:
%03d:表示输出的整数显示3位数,不足以0不全,超出当前位数则原样输出。
%.2f:表示小数点后显示2位。
1
2
3
4
5
6
7
8
9age = 18
name = 'Tom'
weight = 65.5
print('今年我的年龄是%03d岁' % age) # %03d 018
print('我的名字是%s' % name)
print('我的体重是%.3f公斤' % weight)# %.3f 65.500
print('我叫%s,今年%d岁。' % (name , age))# 输出多个
print('我叫%s,今年%s岁。' % (name , age)) # %s可以输出整型,浮点型格式化字符串除了%s,还可以写为
f'{表达式}'
1
print(f'我的名字是{name},今年{age}岁了') # 结果:我的名字是Tom,今年18岁了
f-格式化字符串是Python3.6中新增的格式化方法,该方法更简单易读。
2、转义字符
\n
:换行。\t
:制表符,一个TAB键(4个空格)的举例。
3、结束符
print('输出的内容',end="\n")
在Python中,print(),默认自带
end="\n"
这个换行结束符,用户可按需求更改结束符(包括转义字符,或者自定义的字符串等等)。
五、输入
1、语法
1 | var = input("提示信息") |
在Python中,input
会把接收到的数据都当作字符串处理,并用变量接收。
2、数据类型转换
函 数 | 作 用 |
---|---|
int(x) | 将 x 转换成整数类型 |
float(x) | 将 x 转换成浮点数类型 |
complex(real,[,imag]) | 创建一个复数,real为实部,imag为虚部 |
str(x) | 将 x 转换为字符串 |
repr(x) | 将 x 转换为表达式字符串 |
eval(str) | 计算在字符串中的有效 Python 表达式,并返回一个对象 |
chr(x) | 将整数 x 转换为一个字符 |
ord(x) | 将一个字符 x 转换为它对应的整数值 |
hex(x) | 将一个整数 x 转换为一个十六进制字符串 |
oct(x) | 将一个整数 x 转换为一个八进制的字符串 |
六、运算符
1、算数运算符
运算符 | 说明 | 实例 | 结果 |
---|---|---|---|
+ | 加 | 12.45 + 15 | 27.45 |
- | 减 | 4.56 - 0.26 | 4.3 |
* | 乘 | 5 * 3.6 | 18.0 |
/ | 除法(和数学中的规则一样) | 7 / 2 | 3.5 |
// | 整除(只保留商的整数部分) | 7 // 2 | 3 |
% | 取余,即返回除法的余数 | 7 % 2 | 1 |
** | 幂运算/次方运算,即返回 x 的 y 次方 | 2 ** 4 | 16,即 24 |
2、赋值运算符
运算符 | 说 明 | 用法举例 | 等价形式 |
---|---|---|---|
= | 最基本的赋值运算 | x = y | x = y |
+= | 加赋值 | x += y | x = x + y |
-= | 减赋值 | x -= y | x = x - y |
*= | 乘赋值 | x *= y | x = x * y |
/= | 除赋值 | x /= y | x = x / y |
%= | 取余数赋值 | x %= y | x = x % y |
**= | 幂赋值 | x **= y | x = x ** y |
//= | 取整数赋值 | x //= y | x = x // y |
&= | 按位与赋值 | x &= y | x = x & y |
|= | 按位或赋值 | x |= y | x = x | y |
^= | 按位异或赋值 | x ^= y | x = x ^ y |
<<= | 左移赋值 | x <<= y | x = x << y,这里的 y 指的是左移的位数 |
>>= | 右移赋值 | x >>= y | x = x >> y,这里的 y 指的是右移的位数 |
3、位运算符
位运算符 | 说明 | 使用形式 | 举 例 |
---|---|---|---|
& | 按位与 | a & b | 4 & 5 |
| | 按位或 | a | b | 4 | 5 |
^ | 按位异或 | a ^ b | 4 ^ 5 |
~ | 按位取反 | ~a | ~4 |
<< | 按位左移 | a << b | 4 << 2,表示整数 4 按位左移 2 位 |
>> | 按位右移 | a >> b | 4 >> 2,表示整数 4 按位右移 2 位 |
4、比较运算符
比较运算符 | 说明 |
---|---|
> | 大于,如果> 前面的值大于后面的值,则返回 True,否则返回 False。 |
< | 小于,如果< 前面的值小于后面的值,则返回 True,否则返回 False。 |
== | 等于,如果== 两边的值相等,则返回 True,否则返回 False。 |
>= | 大于等于(等价于数学中的 ≥),如果>= 前面的值大于或者等于后面的值,则返回 True,否则返回 False。 |
<= | 小于等于(等价于数学中的 ≤),如果<= 前面的值小于或者等于后面的值,则返回 True,否则返回 False。 |
!= | 不等于(等价于数学中的 ≠),如果!= 两边的值不相等,则返回 True,否则返回 False。 |
5、逻辑运算符
逻辑运算符 | 含义 | 基本格式 | 说明 |
---|---|---|---|
and | 逻辑与运算,等价于数学中的“且” | a and b | 当 a 和 b 两个表达式都为真时,a and b 的结果才为真,否则为假。 |
or | 逻辑或运算,等价于数学中的“或” | a or b | 当 a 和 b 两个表达式都为假时,a or b 的结果才是假,否则为真。 |
not | 逻辑非运算,等价于数学中的“非” | not a | 如果 a 为真,那么 not a 的结果为假;如果 a 为假,那么 not a 的结果为真。相当于对 a 取反。 |
6、三目运算符
Python利用if else语句提供三目运算符的运算,形式如下:
1 | exp1 if contion else exp2 |
解释:condition 是判断条件,exp1 和 exp2 是两个表达式。如果 condition 成立(结果为真),就执行 exp1,并把 exp1 的结果作为整个表达式的结果;如果 condition 不成立(结果为假),就执行 exp2,并把 exp2 的结果作为整个表达式的结果。
例如:max = a if a>b else b
,表示取a,b的最大值,并赋给max。
三目运算符的嵌套
Python 三目运算符支持嵌套,如此可以构成更加复杂的表达式。在嵌套时需要注意 if 和 else 的配对,例如:
1 | a if a>b else c if c>d else d |
应该理解为:
1 | a if a>b else ( c if c>d else d ) |
7、成员运算符
运算符 | 描述 | 实例 |
---|---|---|
in | 如果在指定的序列中找到值返回 True,否则返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
not in | 如果在指定的序列中没有找到值返回 True,否则返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
8、身份运算符
运算符 | 描述 | 实例 |
---|---|---|
is | is是判断两个标识符是不是引用自一个对象 | x is y, 如果 id(x) 等于 id(y) , is 返回结果 1 |
is not | is not是判断两个标识符是不是引用自不同对象 | x is not y, 如果 id(x) 不等于 id(y). is not 返回结果 1 |