一、代码的格式
(一)代码的注释:
1.单行注释 用 “ # ” 开头,用于说明当前行或之后代码的功能
可以选中需要注释的行 用快捷键 Ctrl + /
# 说明当前行或之后代码的功能 例如:
print (“Hello, Python!”) #使用print输出字符串
#输出百度的地址:
print("http://www.baidu.com")
print( 36.7 * 14.5 ) #输出乘
2.多行注释 用三对双引号或单引号包裹起来,用于说明函数或类的功能。
"""
使用 3 个双引号或者单引号分别作为注释的开头和结尾
可以一次性注释多行内容
这里面的内容全部是注释内容
"""
'''
for i in range(10):
print(i)
'''
3.代码的缩进:
逻辑行的“首行”需要顶格,不需要缩进,相同逻辑层需要保持相同的缩进。
" : "标记一个新的逻辑层
增加缩进表示进入下一个代码层
减少缩进表示返回上一个代码层
一般在输入“ :”后,按“回车”会自动进行缩进。
可以按tab键进行缩进,也可以用空格键,用4个空格表示一级缩进。
二、标识符和关键字
标识符:
自定义的一些符号和名称,这些符号和名称叫做标识符。
由字母、下划线和数字组成,且数字不能开头;且区分大小写,例如:andy和Andy是不同的标识符;不能使用关键字。
关键字:
每个关键字都有不同的作用。
查看关键字:
import keyword
keyList = keyword.kwlist
print(keyList)
三、变量和数据类型
(一)、变量
标识内存单元的标识符又称为变量名,Python通过赋值运算符“=”将内存单元中存储的数值与变量名建立联系,即定义变量,具体语法格式如下: 变量 = 值
(二)、数据类型
根据数据存储形式的不同,数据类型分为基础的数字类型和比较复杂的组合类型。
组合类型分为字符串、列表、元组、字典等。
数字类型:
整型 | 0 101 -239 False True |
浮点型 | 3.1415 4.2E-10 -2.334E-9 |
复数类型 | 3.12+1.2.3j -1.23-93j |
布尔类型 | True False |
字符串是一个由单引号、双引号或者三引号包裹的、有序的字符集合。
使用单引号包含 | 'Python123¥' |
使用双引号包含: | "Python4*&%" |
使用三引号包含: | '''Python s1 ~(())''' |
列表是多个元素的集合,它可以保存任意数量、任意类型的元素,且可以被修改。Python中使用“[]”创建列表,列表中的元素以逗号分隔。例: [1, 2, 'hello']
元组与列表的作用相似,它可以保存任意数量与类型的元素,但不可以被修改。Python中使用“()”创建元组,元组中的元素以逗号分隔。例: (1, 2, 'hello'])
集合与列表和元组类似,也可以保存任意数量、任意类型的元素,不同的是,集合使用“{}”创建,集合中的元素无序且唯一。例: {'apple', 'orange', 1}
字典中的元素是“键(Key):值(Value)”形式的键值对,键不能重复。Python中使用“{}”创建字典,字典中的各元素以逗号分隔。例: {"name": "zhangsan", "age": 18}
(四)、变量的输入与输出
print()函数用于向控制台中输出数据,它可以输出任何类型的数据。
print(*objects, sep=' ', end='\n', file=sys.stdout)
input()函数用于接收用户键盘输入的数据,返回一个字符串类型的数据。
input([prompt])
prompt表示函数的参数,用于设置接收用户输入时的提示信息。
name = input("请输入您的姓名:")
print(name)
四、数字类型
(一)整型
整数类型(int)简称整型,它用于表示整数。整型常用的计数方式有4种,分别是二进制(以“0B”或“0b”开头)、八进制(以数字“0o”或“0O”开头)、十进制和十六进制(以“0x”或“0X”开头)。
用于转换数据进制的函数:bin()、oct()、int()、hex()
(二)浮点型
浮点型(float)用于表示实数,由整数和小数部分(可以是0)组成,较大或较小的浮点数可以使用科学计算法表示。使用字母e或E代表底数10。浮点型每个浮点型数据占8个字节(即64位),且遵守IEEE标准。Python中浮点型的取值范围为-1.8e308~1.8e308,若超出这个范围,Python会将值视为无穷大(inf)或无穷小(-inf)。
(三)复数类型
复数由实部和虚部构成,它的一般形式为:real+imagj,其中real为实部,imag为虚部,j为虚部单位。
complex_one = 1 + 2j # 实部为1,虚部为2
complex_two = 2j # 实部为0,虚部为2
(四)布尔类型
布尔类型只有True(真)和False(假)两个取值。值True对应整数1,False对应整数0。若数据符合以下任一条件,其布尔值均为False。
(五)数字类型转换
数字类型间进行转换的函数有int()、float()、complex(),浮点型数据转换为整型数据后只保留整数部分。
五、运算符
主要用于实现数值之间的运算,运算符可分为单目运算符、双目运算符;根据运算符的功能,运算符可分为算术运算符、赋值运算符、比较运算符、逻辑运算符和成员运算符。
(一)算术运算符
整型与浮点型进行混合运算时,将整型转化为浮点型。
其他类型与复数运算时,将其他类型转换为复数类型。
(二)赋值运算符
赋值运算符的作用是将一个表达式或对象赋值给一个左值。左值是指一个能位于赋值运算符左边的表达式,它通常是一个可修改的变量,不能是一个常量。
# 赋值运算符允许同时为多个变量赋值
x = y = z = 1 # 变量x、y、z均赋值为1
算术运算符可以与赋值运算符组成复合赋值运算符,赋值运算符同时具备运算和赋值两项功能。
海象运算符“:=”,该运算符用于在表达式内部为变量赋值。
num_one = 1
# 使用海象运算符为num_two赋值
result = num_one + (num_two:=2)
print(result)
(三)比较运算符
比较运算符也叫关系运算符,用于比较两个数值,判断它们之间的关系。Python中的比较运算符包括==、!=、>、<、>=、<=,它们通常用于布尔测试,测试的结果只能是True或False。
(四)逻辑运算符
使用“or”,“and”,“not”这三个关键字作为逻辑运算符,其中or与and为双目运算符,not为单目运算符。
(五)成员运算符
成员运算符in和not in用于测试给定数据是否存在于序列(如列表、字符串)中。
in | 如果指定元素在序列中返回True 否则返回False |
not in | 如果指定元素不在序列中返回True 否则返回False |
(六)位运算符
位运算符用于按二进制位进行逻辑运算,操作数必须为整数。
按位左移(<<)是指将二进制形式操作数的所有位全部左移n位,高位丢弃,低位补0。以十进制9为例,9转为二进制后是00001001,将转换后的二进制数左移4位。
按位右移(>>)是指将二进制形式操作数的所有位全部右移n位,低位丢弃,高位补0。以十进制8为例,8转换为二进制后是00001000,将转换后的二进制数右移2位。
按位与(&)是指将参与运算的两个操作数对应的二进制位进行“与”操作。当对应的两个二进制位均为1时,结果位就为1,否则为0。以十进制9和3为例,9和3转换为二进制后分别是00001001和00000011。
按位或(|)是指将参与运算的两个操作数对应的二进制位进行“或”操作。若对应的两个二进制位有一个为1时,结果位就为1。若参与运算的数值为负数,参与运算的两个数均以补码出现。以十进制8和3为例,8和3转换为二进制后分别是00001000和00000011。
按位异或(^)是指将参与运算的两个操作数对应的二进制位进行“异或”操作。当对应的两个二进制位中有一个为1,另一个为0时,结果位为1,否则结果位为0。以十进制8和4为例,8和4转换为二进制后分别是00001000和00000100。
按位取反(~)是指将二进制的每一位进行取反,0取反为1,1取反为0。按位取反操作首先会获取这个数的补码,然后对补码进行取反,最后将取反结果转换为原码,例如,对9按位取反的计算过程如下:
因为9是正数,计算机中正数的原码=反码=补码,所以9的补码为00001001
对正数9的补码00001001进行取反操作,取反后结果为补码11110110
将补码00001001转换为原码时,符号位不变,其他位取反,然后+1得到原码,最终结果为10001010,即-10
运算符优先级
运算符的优先级从高到低: