一、变量
1.标识符
- 标识符可由字母、数字、下划线组成
- 不能一数字开头
- 不能与关键字重名
2.变量命名
- Python中的标识符子区分大小写的
- 如果变量名需要两个或两个以上单词组成时
- 每个单词都是用小写字母
- 单词与单词之间使用下划线
例:
qq_id、qq_passwdord
驼峰命名法:
如果变量名需要两个或两个以上单词组成时也可以使用以下命名规则
小驼峰命名法:第一个单词以小写字母开头,后接单词的首字母大写
大驼峰命名法:每一个单词的首字母都大写
3.关键字
可以通过以下命令来查看Python中的关键字
import keyword
print(keyword.kwlist)
4.声明变量
变量名 = 值
例:
name = "小明"
i = 18
f = 18.9
t = True
二、格式化输出
格式化字符 | 含义 |
%s | 字符串 |
%d | 有符号十进制整数,%06表示输出整数显示6位不足用0 补全 |
%f | 浮点数,%.02f表示小数点后只显示两位 |
%% | 输出% |
语法格式如下:
print("格式化字符串" % 变量1)
print("格式化字符串" % (变量1,变量2,...))
例:
运行结果
print:
# print默认换行
# 如果不想换行在后面加上end=''即可
print(1, end='')
print(2)
# t同时输出两个数字
print(3, 4)
# 把两个数字之间的分隔符换成“,”
print(3, 4, sep=",")
运行结果:
三、数据类型
文本类型 | str |
数值类型 | int、float、complex |
序列类型 | list、tuple、range |
映射类型 | dict |
集合类型 | set、forzenset |
布尔类型 | bool |
二进制类型 | bytes、bytearray、memoryview |
如果想查看变量类型可以:
name = "小明"
print(type(name))
1.int
Python3不区分int和long
print(type(2 ** 32))
print(type(2 ** 64))
运行结果:
2.字符串类型
- Python中的字符串变量由单引号或双引号括起来
- 字符串赋值: 变量名 = “值”
- 多行字符串可以使用三个引号将多行字符串赋值给变量(保留格式输出)
例:
# 字符串用“+”可以实现字符串拼接
str1 = "小"
str2 = "灰灰"
print(str1 + str2) # 结果:小灰灰
3.布尔类型
- 布尔表示两值之一:True或False
- 除空格外,任何支付都为True
- 除0外任何数字均为True
- 除空列表外,任何列表、元组、集合和字典都为True
例:
# bool类型可以和数值型直接计算(True是1,False是0)
i = 10
t = True
print(i + t) # 运算结果:11
4.数值转换
强制转换:
s = "12"
print(type(s))
# 把s转换成int类型
s = int("12")
print(type(s))
运行结果:
进制转换
a = 8
print("转十六进制:", hex(a))
print("转八进制:", oct(a))
print("转二进制:", bin(a))
运行结果:
四、算数运算符
1.算术运算符
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取模(返回除法的余数) |
** | 幂 |
// | 取整除(向下取整) |
2.赋值运算符
= | 常规赋值运算符 |
+= | 加法赋值运算符,a+=b等效于a=a+b |
-= | 减法赋值运算符,a-=b等效于a=a-b |
*= | 乘法赋值运算符 |
/= | 除法赋值运算符 |
%= | 取模赋值运算符 |
**= | 幂运算赋值运算符 |
//= | 取整除赋值运算符 |
3.比较运算符
== | 比较两个对象是否相等 |
!= | 比较两个对象是否不相等 |
> | 大小比较 |
< | 大小比较 |
>= | 大小比较 |
<= | 大小比较 |
4.逻辑运算符
and | 布尔"与"运算符,犯规两个变量“与”运算的结果 |
or | 布尔"或"运算符,犯规两个变量“或”运算的结果 |
not | 布尔"非"运算符,犯规两个变量“非”运算的结果 |
例:
a = True
b = True
c = False
print(a and b, a and c)
print(a or b, a or c)
print(not a, not c)
运算结果:
5.位运算
& | 按位“与”,对应二进制相应位都为1结果才为1,否则为0 |
| | 按位“或”,对应二进制相应位有一个为1时,结果就为1 |
^ | 按位“异或”,对应二进制相应位相异时,结果为1 |
~ | 按位“取反” |
<< | 左移动 |
>> | 右移动 |
例:
a = 7 # 0111
b = 8 # 1000
print(a & b) # 0000
print(a | b) # 1111
print(a ^ b) # 1111
print(~a) # 1000
print(a << 1) # 1110
print(b >> 1) # 0100
print(a >> 1) # 0011
运行结果:
6.成员运算符
in | 在指定序列中找到值时返回True,否则返回False |
not in | 在指定序列中没有找到值时返回True,否则返回False |
例:
s = "hello world"
print("hi" in s)
print("hi" not in s)
print("hello" in s)
运行结果:
7.身份运算符
is | 判断两个标识符是否引用自同一个对象,是则返回True,否则返回False |
is not | 判断两个标识符是否引用自同一个对象,不是则返回True,否则返回False |
例:
a = 123
b = 123
c = 98
print(id(a)) # 查看a的地址
print(id(b))
print(id(c))
print(a is b) # a、b的地址一样
print(a is c) # a、c的地址不一样
print(a is not c)
运行结果:
五、运算符优先级
** | 幂 |
~ | 按位“取反” |
*、/、%、// | 乘、除、取模、取整除 |
+、- | 加、减 |
<<、>> | 左移、右移 |
& | 按位“与” |
^、| | 按位“异或”、按位“或” |
<=、<、>、>= | 比较运算 |
==、!= | 等于、不等于 |
=、%=、/=、//=、-=、+=、**= | 赋值运算符 |
is、is not | 身份运算符 |
in、not in | 成员运算符 |
and、or、not | 逻辑运算符 |