您好,欢迎访问一九零五行业门户网

python变量数据类型和运算符怎么使用

1 数据类型不同类型的变量可以进行的运算是不同的,所以必须理解变量的类型,python中数据类型可以分为:
内置类型:
数值类型:整型int,浮点型float,复数(complex) 3+5j
str:字符串
bool:布尔值【true,false】
none:空值,表示变量没有确定的值
list:列表
tuple:元组
dict:字典
set:集合
自定义类型:
class :类
1.1 基础类型数值类型:
整型(int): python3中只有int一种,可以表示整数,例如:10,-5,10000
浮点型(float): 表示带小数点的实数,有两种表示法:
小数表示: 1.9 .23
科学计数法: 用e来表示10的指数,1e2就代表了100,注意e前面必须有数值,e后面必须为整数
复数(complex):表示数学上的无理数,形如:a+bj
布尔型(bool):表示事务的两种状态,男女、阴晴、亮暗等,它只有两个值:true,false
none:表示空对象,一般用于判断,不同于0和空字符
字符串(str):在python中,用引号(单引号、双引号、三引号)表示字符串
字符串的表示:
# 用单引号表示: 'hello'
# 用双引号表示:我用python
# 用3个单引号表示:可以表示多行文本,例如:
'''伟大

祖国
'''
# 用3个双引号表示:可以表示多行文本,例如:
生死看淡,
不服就干
转义字符:有些特殊字符无法从键盘输入,可以使用转义字符表示,另外,无论是单引号、双引号还是三引号字符串,其中引号是字符串界定符,引号并不是字符串的内容,那么如何在单引号字符串中表示一个单引号呢,这也可以使用转义字符表示。常见的转义字符
转义字符
描述
转义字符
描述
\'
表示一个普通字符单引号
\n
换行
\
表示一个普通字符双引号
\r
回车
\'''
一个普通的三单引号
\\
一个普通的字符\
\
一个普通的三双引号
\a
响铃
\t
tab键
\b
回删一个字符
字符串编码:计算机只能识别二进制,那么字符串如何存储到计算机里呢
计算机不能直接存储字符串,但我们可以将字符编码,例如用65表示大写字符a,66表示大写字符b....等这种表示方式就是美国类的ascii码,只能表示127个字符,但对于美国人来说已经足够了。一但能用整数表示字符,我们可以很方便的把整数用二进制表示,那么字符串也就和容易存储到计算机了。
但还有很多其他国家的语言是不能用ascii表示的,所有iso组织就推出了unicode码,用来表示任何一种语言的字符,unicode码也称之为万国码,通用码,可以表示任何一种语言的任何一个字符。unicdoe码有多中表示方式,例如:utf-8、utf-16、utf-32等。一般使用较多的是utf-8,utf-8是一种变长的编码,表示一个字符可能用一个字节,也可能是三个字节
中文常用编码一般用gbk编码,用2个字节表示一个汉字
1.2 类型判断我们可以使用type和isinstance来测试和判断数据类型
#type用法:type(obj)功能:返回obj的数据类型参数:obj是你要测试变量或数值示例:age = 10name = 'hello'print(type(name),type(age))#判断变量是否是指定类型if type(age) is int:print('是')else:print('否')#isinstance用法:isinstance(obj,typename)功能:判断obj是否是指定类型,是返回true,否返回false参数: objobj是你要判断的变量或数值typename是指定数据类型,可以是int,float,str等。也可是一个类型的元组,例如:(int,float)示例:age = 10name = 'hello'print(isinstance(age,int))print(isinstance(name,(str,int)) #只要name是str或int的一种就返回trueif isinstance(age,int):print('是')else:print('否')#type和isinstance的区别type判断基本类型是没问题的,但无法判断子类对象是父类的一种isinstance可以判断子类对象是父类的一种class a:passclass b(a):passobja = a()objb = b()#输出否if type(objb) is a:print('是')else:print('否')print(isinstance(objb,a)) #true
结论:优先使用isinstance
2. 运算符和表达式在数学上为了计算结果,我们会写一些式子计算,例如:
30 + 5
这是数学中的计算式,python中为了计算也有类似的式子,叫表达式。在表达式中30和5称作操作数,+称之运算符。表达式的目的在于计算结果。表达式构成:
最基本的表达式就是一些数值,变量、函数,例如: 3, a(变量) print(‘hello’)
由基本表达式加上适当的运算符构成复杂的表达式: 3 + a
综合上述,所谓表达式就是由操作数和运算符组成䄦符合python语法的式子。要写表达式首先要学习运算符。关于运算符要知道两件事情
计算顺序 : 是从左向右算还是从右向左算
优先级 : 比如先乘除后加减
2.1 算术运算符a = 20b = 10
运算符
说明
示例
-
负号,取原数的相反数
a = 10 print(-a) #-10
+ - * /
加减乘除,同数学上一样
a + b = 30 a - b = 10 a * b = 200 a / b = 2
%
模运算,即求 a整除以b的余数
a % 10 = 0
//
整除
a // b = 2
**
对运算符进行指数(幂)计算
a ** b 表示20的10次方
2.2 模运算说明模运算的符号取决于第二个操作数(右操作数)
模运算的计算公式:r = a % b = a - n * b,其中n是小于a/b的最大整数
整除(//)运算如果有一个操作数是浮点数,结果是浮点数
用途:判断奇偶、判断是否能够整除、最大公约数、水仙花数
2.3 数学函数函数名
函数的说明
示例
abs
取绝对值
abs(-10)
pow(x,y)
x的y次方
pow(10,2)求10的平方
round(x,[n])
浮点数的4舍5入, n代表保留小数的位数
round(3.456)
max()
求给定参数的最大值
max(21,43,65,75,86,32,3,45)
min()
求给定参数的最小值
min(21,43,65,75,86,32,3,45)
math.ceil()
需要导入import math库 向上取整
math.ceil(18.1) #19
math.floor()
需要导入import math库 向下取整
math.floor(18.1) #18
math.sqrt
需要导入import math库 求平方根
math.sqrt(100)
python3.5.2中文帮助文档
2.4 随机函数获取随机数,需要引入random库。
import random
函数名
函数说明
random.randrange(start,stop,step)
start 指定范围的起始值 包含本身,默认是0;stop 指定范围的结束值 不包含本身; step 步长,默认步长是1。该函数返回一个整数
random.randint(start,end)
返回[start end]之间的一个随机整数,start必须小于end
random.random()
返回一个[0.0,1.0)之间的随机小数
注意:
优先级: ** >正负号 > // % * / > + -
从左向右算
在幂运算和一元运算符联合计算时,从右向左算,例如: -1 ** 2 = -1
2.5 赋值运算符a = 5; b = 10; c = 20
运算符
说明
示例
=
简单赋值, 将b+c的结果赋给a
a = b +c #a=30
+=
a += b等价于 a = a +b
a = 15
-=
a -= b等价于 a = a - b
a = -5
*=
a *= b等价于 a = a * b
a = 50
/=
a /= b 等价于a = a / b
a = 0.5
%=
a %= b等价于a = a % b
a = 5
//=
a //= b等价于 a = a // b
a = 0
**=
a **= b等价于a = a ** b
注意:
赋值运算符左边必须是变量
从右向左算
没有赋值表达式
所有赋值运算符优先级相同,赋值运算符优先级非常低,仅高于成员运算符和身份运算符、逻辑运算符
注意在复合赋值中
a = 2b = 3a *= b + 2 #等价于 a = a * (b + 2)print(a) # a = 10
2.6 关系运算关系运算就是比较运算,如果表达式成立,返回true,否则返回false。关系运算的结果是布尔值。
运算符
示例
说明
==
a == b
a和b值相等,结果是true,a和b值不相等结果为false
!=
a != b
a不等于b 结果为true,否则结果为true
>
a > b
a大于b结果为true,否则为false
>=
a >= b
a大于等于b结果为true,否则为false
eb18138301f26536200990b6b7c6f6b7 1 and a 1d423e898efa8b9236cfb1ad3539fa38 and >or
2.10 身份运算符is: 判断两个标识符是否引用自同一个实体【对象】,比较的是两个对象的id是否一样,如果相同为真,否则为假
is not:判断两个标识符是不是引用自不同的实体【对象】如果两个对象的id不同结果为真,否则为假
id()函数获取实体的id(地址)
注意:is和==的区别
is用于判断两个变量引用实体是否为同一个【id】
==用于判断两个变量的值是否相同,但id不一定相同
2.11 成员运算符主要应用在序列中
in:如果在指定的序列中找到指定的值,则返回true,否则返回false
not in:如果在指定的序列中未找到指定的值,则返回true,否则返回false
2.12 if-else表达式表达式1 if 条件 else 表达式2,如果条件为真假结果是表达式1的值,否则结果是表达式2的值
以上就是python变量数据类型和运算符怎么使用的详细内容。
其它类似信息

推荐信息