Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
*
在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。
*
等号(=)用来给变量赋值。
*
等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。
实例1:单个变量复制
#示例
a=1 # 整型变量
b=2.2 # 浮点型变量
c="admin" # 字符串
print (a)
print (b)
print (c)
#运行结果如下
1
2.2
admin
实例2:多个变量赋值
Python允许你同时为多个变量赋值。例如:
#法一
a=b=c=1 #python赋值运算是自右向左,此例中1不可以在左边
print(a,b,c)
##运行结果:
1 1 1
#法二
a,b,c=1,2,"boot" #两个整型对象 1 和 2 的分配给变量 a 和 b,字符串对象 "boot" 分配给变量 c。
print(a,b,c)
##运行结果:
Number(数字)
*
String(字符串)
*
List(列表)
*
Tuple(元组)
*
Set(集合)
*
Dictionary(字典)
Python3 支持 int、float、bool、complex(复数)。
*
** 内置的 type() 函数可以用来查询变量所指的对象类型。**
示例
a=10 #int
b=2.2 #float
c=True #bool
d=2+5j #complex(复数)
print(type(a))
print(type(b))
print(type(c))
print(type(d))
#运行结果
<class 'int'>
<class 'float'>
<class 'bool'>
<class 'complex'>
还可以用 isinstance 来判断
#实例:
a=10 #int型
print(isinstance(a, int))
#运行结果
True
值得我们注意的是 isinstance 和 type 的区别在于 :
type()不会认为子类是一种父类类型。
isinstance()会认为子类是一种父类类型。
** Python3 中,bool 是 int 的子类,True 和 False 可以和数字相加, True==1、False==0 会返回True,但可以通过is 来判断类型。 **
#实例
a=True
b=False
print(a+b)
#运行结果
1
可以使用del语句删除一些对象引用
#实例:del前
a=100
print(a)
##运行结果:
100
#del后
a=100
del a
print(a)
##运行结果
NameError: name 'a' is not defined #会报错
Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符
字符串的截取的语法格式
变量[头下标:尾下标] #实际截取过程中中括号是左闭右开的,且最左边从0开始,最右边从-1开始
#实例1:
str="How do you do"
print(str[0:3]) #截取how,h是第0个字符,w是第2个字符,因为右边是开区间,所以需要取到第四个字符
print (str[0:-1]) # 输出第一个到倒数第二个的所有字符
print (str[0]) # 输出字符串第一个字符
print (str[2:5]) # 输出从第三个开始到第五个的字符
print (str[2:]) # 输出从第三个开始的后的所有字符
print (str * 2) # 输出字符串两次,也可以写成 print (2 * str)
print (str + "TEST") # 连接字符串
##运行结果
how
How do you d
H
w d
w do you do
How do you doHow do you do
How do you doTEST
** Python 使用反斜杠 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串 **
#实例1
print('how \n do') #使用转义符换行
##运行结果
how
do
#实例2
print(r'how \n do') #字符串前面添加一个 r,就可以不转义
##运行结果
how \n do
反斜杠\可以作为续行符,表示下一行是上一行的延续。也可以使用 """...""" 或者 '''...''' 跨越多行。
#实例:
c="""how
are
you"""
print(c)
##运行结果
how
are
you
注意点
*
1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。
*
2、字符串可以用+运算符连接在一起,用/*运算符重复。
*
3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
*
4、Python中的字符串不能改变。
List(列表) 是 Python 中使用最频繁的数据类型。
*
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)
*
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
*
和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
列表截取的语法格式如下:
变量[头下标:尾下标]
#实例
list=['abc',777,'cadi',2.1]
tinylist=[123,'cadi']
print (list) # 输出完整列表
print (list[0]) # 输出列表第一个元素
print (list[1:3]) # 从第二个开始输出到第三个元素
print (list[2:]) # 输出从第三个元素开始的所有元素
print (tinylist * 2) # 输出两次列表
print (list + tinylist) # 连接列表
#运行结果
['abc', 777, 'cadi', 2.1]
abc
[777, 'cadi']
['cadi', 2.1]
[123, 'cadi', 123, 'cadi']
['abc', 777, 'cadi', 2.1, 123, 'cadi']
函数 描述 | |
---|---|
int(x [,base]) | 将x转换为一个整数 |
float(x) | 将x转换到一个浮点数 |
complex(real [, imag]) | 创建一个复数 |
strx) | 将对象×转换为字符串 |
repr(x) | 将对象×转换为表达式字符串 |
eval(str) | 用来计算在字符串中的有效Python表达式,并返回一个对象 |
tuple(s) | 将序列s转换为一个元组 |
list(s) | 将序列s转换为一个列表 |
set(s) | 转换为可变集合 |
dict(d) | 创建一个字典。d必须是一个(key, value)元组序列。 |
frozenset(s) | 转换为不可变集合 |
chr(x) | 将一个整数转换为一个字符 |
ord(x) | 将一个字符转换为它的整数值 |
hex(x) | 将一个整数转换为一个十六进制字符串 |
Python 语言支持以下类型的运算符:
*
算术运算符
*
比较(关系)运算符
*
赋值运算符
*
逻辑运算符
*
位运算符
*
成员运算符
*
身份运算符
*
运算符优先级
#实例
a=3
b=5
print(a+b) # 加法
print(a-b) # 减法
print(a*b) # 乘法
print(a/b) # 除法,得到一个浮点数
print(a//b) # 除法,得到一个整数
print(a%b) # 取余
print(a**b) # 乘方
##运行结果
8
-2
15
0.6
0
3
243
注意:
Python可以同时为多个变量赋值,如a, b = 1, 2。
*
一个变量可以通过赋值指向不同类型的对象。
*
数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数。
*
Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型
*
在混合计算时,Python会把整型转换成为浮点数。
假设变量a为1,b为2
运算符 | 描述 | 示例 |
---|---|---|
== | 等于-比较对象是否相等 | (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。 |
#示例
a=1
b=2
c=3
print(a==b)
print(a!=b)
print(a>b)
print(a<b)
##运行结果
False
True
False
True
假设变量a为1,b为2
运算 符 | 描述 | 实例 |
---|---|---|
= | 简单的赋值运算符 | c = a+ b将a+b的运算结果赋值为c |
+= | 加法赋值运算符 | c +=a等效于c=c+ a |
-= | 减法赋值运算符 | c -=a等效于c=c-a |
/*= | 乘法赋值运算符 | c /*=a等效于c=c/*a |
/= | 除法赋值运算符 | c /= a等效于c= c/a |
%= | 取模赋值运算符 | c%=a等效于c=c %a |
//= | 幂赋值运算符 | c //= a等效于c = c/* a |
//= | 取整除赋值运算符 | c //= a等效于c=c//a |
运算描述 符 | ||
---|---|---|
& | 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该 位的结果为1,否则为0 | |
按位或运算符:只要对应的二个二进位有一个为1时,结果位 就为1。 | ||
^ | 按位异或运算符:当两对应的二进位相异时,结果为1 | |
~ | 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把 0变为1。~x类似于-x-1 | |
<< | 左移动运算符:运算数的各二进位全部左移若干位,由"<<"右 边的数指定移动的位数,高位丢弃,低位补0。 | |
>> | 右移动运算符:把">>"左边的运算数的各二进位全部右移若干 位,">>"右边的数指定移动的位数 |
#示例
a=1 #1=0000 0001
b=3 #2=0000 0011
print(a&b) #1=0000 0001
print(a|b) #3=0000 0011
print(a^b) #2=0000 0010
print(~a) #-2=1111 1110=-128+126=-2
print(a<<2) #4=0000 0100
print(a>>2) #0=0000 0000
##运行结果
1
3
2
-2
4
0
运算 符 | 逻辑表达式 | 描述 |
---|---|---|
and | x and y | 布尔"与"-如果×为False,x and y返回×的值,否则返回y的计算 值。 |
or | x or y | 布尔"或”" -如果×是True,它返回×的值,否则它返回y的计算值。 |
not | not x | 布尔"非"-如果×为True,返回False。如果×为False,它返回 True。 |
#示例:
a=1
b=2
print(a and b)
##运行结果
2
运算符 | 描述 | 运算 实例 |
---|---|---|
in | 如果在指定的序列中找到值返回True,否则返回False。 | ×在y序列中,如果×在y序列中返回True。 |
not in | 如果在指定的序列中没有找到值返回True,否则返回 False。 | ×不在y序列中,如果×不在y序列中返回 True, |
#示例
list=[10,20,30]
print(10 in list)
print(10 not in list)
##运行结果
True
False
is | is 是判断两个标识符是不是引用 自一个对象 | x is y,类似id(x)== id(y),如果引用的是同一个对象则返回True,否 则返回False |
---|---|---|
is not | is not是判断两个标识符是不是引 用自不同对象 | x is not y,类似id(a) != id(b)。如果引用的不是同一个对象则返回结 果True,否则返回False。 |
#示例1
a=10
b=10
print(a is b)
##运行结果
True
#示例2
a=10
b=20
print(a is b)
##运行结果
False
#示例3
a=10
b=10
print(a is not b)
##运行结果
False
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/m0_51160032/article/details/120638413
内容来源于网络,如有侵权,请联系作者删除!