python全栈之路2,变量类型

本章主要内容:

1、python变量

2、数据类型

3、运算符

 

 


python变量                                                                                                        

1、变量的含义 

        ♦ 变量可以理解为赋予并保存一个值,可以拿来使用或调用。

        ♦ 变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数、字符、、中文汉字或字符串数据。

 

 


2、变量赋值

        ♦ Python 中的变量赋值不需要类型声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

        ♦ 等号(=)用来给变量赋值。等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。例如:

 

上面是打印后的结果,这个也可以看做变量的使用和调用

 

变量一般的命名规则和要求:

(1)变量名要有描述性,能让别人看懂你变量的含义。建议不要使用中文汉字,虽然python3支持汉字做变量名,也不要用拼音,最好用英文单词;

(2)变量名只能用数字、字母、下划线组成,不可以使用空格和特殊字符,这里下划线不属于特殊字符;

(3)不能以数字开头,可以使用下划线,一般多个名称之间用下划线来间隔连接;

(4)保留字符不能被使用。比如print、if、else、int、str、and、or.......等等语法名称,这些都是python的保留字符;

(5)变量名称区分大小写,比如创建一个变量名为name,再创建一个变量为Name,但是两个变量是不一样的,不能看做是一个变量;

 


 

 3、多个变量赋值

        ♦ Python允许你同时为多个变量赋值。例如:     

        a = b = c = 1        

以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。

        ♦ 也可以为多个对象指定多个变量。例如:

        a, b, c = 1, 2, "john"

以上实例,两个整型对象1和2的分配给变量 a 和 b,字符串对象 "john" 分配给变量 c。

 


 python数据类型                                                                                                 

1、 标准数据类型

在内存中存储的数据可以有多种类型。

例如,一个人的年龄可以用数字来存储,他的名字可以用字符来存储。

Python 定义了一些标准类型,用于存储各种类型的数据。

Python有五个标准的数据类型:

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)

上面有说过整数类型和字符串类型在变量赋值时有区别,这两种类型有什么区别呢?     

        ♦ 整数类型是数字类型中的一种,数字数据类型用于存储数值。数字类型分为四种

int(有符号整型)、long(长整型[也可以代表八进制和十六进制])、float(浮点型)、complex(复数)。

整数(integer)就是像-3,-2,-1,0,1,2,3,10等这样的数,整数类型int就是整数的英文单词缩写。

 

        ♦ 字符串或串(String)是由数字、字母、下划线组成的一串字符,一般写为str

所以前面定义变量时,赋的值为字符串时,要用单引号或双引号

这两者的区别是:整数类型和字符串类型在定义变量名字时不一样,int和str不能拼接,只能用逗号分隔开,才可以打印使用。

同类型之间不需要逗号,可以直接拼接打印。例如:

 

这里报错了,提示不能把int类型和str类型之间用 + 号拼接,这种可以用逗号分隔开,也可以再转换类型,例如:

 

数字也可以定义为一个字符串,这样同类型之间就可以拼接打印了。逗号是分隔,打印出来两个变量之间有空格。+号是拼接,中间则没有空格。

一般不要用+号连接,太占用内存

 

 

 


 

2、 Python数据类型转换

有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值

函数描述

int(x [,base])

将x转换为一个整数

long(x [,base] )

将x转换为一个长整数

float(x)

将x转换到一个浮点数

complex(real [,imag])

创建一个复数

str(x)

将对象 x 转换为字符串

repr(x)

将对象 x 转换为表达式字符串

eval(str)

用来计算在字符串中的有效Python表达式,并返回一个对象

tuple(s)

将序列 s 转换为一个元组

list(s)

将序列 s 转换为一个列表

set(s)

转换为可变集合

dict(d)

创建一个字典。d 必须是一个序列 (key,value)元组。

frozenset(s)

转换为不可变集合

chr(x)

将一个整数转换为一个字符

unichr(x)

将一个整数转换为Unicode字符

ord(x)

将一个字符转换为它的整数值

hex(x)

将一个整数转换为一个十六进制字符串

oct(x)

将一个整数转换为一个八进制字符串

 

 

 


 

运算符                                                                                                                 

这里主要说明Python的运算符。举个简单的例子 4 +5 = 9 。 例子中,4 和 5 被称为操作数,"+" 称为运算符。

Python语言支持以下类型的运算符:

 

 

1、算数运算符

算数运算符是python中用来计算的符号,帮助我们来实现一些数学的运算

" + " ,和数学中的加号一样,用来做相加法的运算

" -  ",和数学中的减号一样,用来做减法的运算

" * ",代表数学中的乘号,用来做乘法的运算

" / ",代表数学中的除号,用来做除法运算

" // ",是数学中整除的意思,只保留整数

" % ",是数学中除法中的取余数,这的结果是除法运算后的余数

 

>>> 1+2
3
>>> 2-1
1
>>> 2*3
6
>>> 6/2
3.0
>>> 5//2
2
>>> 5%3
2

 

 

2、比较(关系)运算符

比较运算符是python中用来比较大小的符号,和数学中的大于小于一样

" > ","<",大于和小于号跟数学中的大小于号的意思是一样的。

" >= ",代表大于等于的意思,表示大于或等于

" < = ",代表小于等于的意思,表示小于或等于

" == ",python中一个等号是赋值,两个等号用来表示,符号两边的数据相等

" != ",有相等,对应的就有不相等,这个代表的就是符号两边不相等

真假值

 

True代表是真的意思。False代表是假的意思

 

>>> 5>3
True
>>> 3<5
True
>>> 4>=4
True
>>> 4<=4
True
>>> 65==65
True
>>> a = 12
>>> b = 5
>>> c = 5
>>> b == c
True
>>> b == a
False
>>> b != a
True

 

 

 

 

3、赋值运算符

在等号前面加上运算符就是赋值运算符(" += "," -= "," *= "," /= "," //= "," %= "')

>>> a = 5
>>> a += 1
>>> print(a)
6
>>> a -= 2
>>> print(a)
4
>>> a *= 5
>>> print(a)
20
>>> a /= 2
>>> print(a)
10.0
>>> a //= 2
>>> print(a)
5
>>> a %= 2
>>> print(a)
1.0

 

4、逻辑运算符

" and ",代表且,并且的意思。可以判断一个变量是否同时满足两个条件,当and两边的条件都要成立时,结果是真(True),否则就是假(False)

" or ",代表或,或者的意思。可以判断一个变量是否满足其中一个条件,当or两边。任意一个或者同时都成立时,结果是真(True),否则就是假(False)

" not ",代表不,不是的意思。用来否定你的条件,如果你的条件为真时,结果为假(False),条件为假时,结果为真(True)

>>> a = 5
>>> a > 0 and a < 7
True
>>> a > 0 and a< 4
False
>>> a > 0 or a < 4
True
>>> a > 7 or a< 4
False
>>> not a > 7
True
>>> not a > 7
True

 

5、成员运算符

成员运算符可以看做在指定的序列中找值

" in ",在指定的序列中找值,如果找到了返回True,否则返回False

" not in ",在指定的序列中找值,如果没找到返回True,否则返回False

>>> a = 3
>>> b = 6
>>> number_list = [1,2,3,4,5]
>>> a in number_list
True
>>> b in number_list
False
>>> a not in number_list
False
>>> b not in number_list
True

 

6、身份运算符

身份运算符用于比较两个对象的存储单元

" is ",是判断两个标识符是不是引用自一个对象

" is not " ,是判断两个标识符是不是引用自不同对象

>>> name1 = "salli"
>>> name2 = "salli"
>>> name1 is name2
True
>>> name3 = "jack"
>>> name2 is name3
False>>> name1 is not name3
True
>>> name1 is not name2
False

 

7、位运算符

按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下:

下表中变量 a 为 60,b 为 13二进制格式如下:

a = 0011 1100

b = 0000 1101

-----------------

a&b = 0000 1100

a|b = 0011 1101

a^b = 0011 0001

~a  = 1100 0011

 

运算符描述实例
& 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a & b) 输出结果 12 ,二进制解释: 0000 1100
| 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。 (a | b) 输出结果 61 ,二进制解释: 0011 1101
^ 按位异或运算符:当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1 (~a ) 输出结果 -61 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式。
<< 左移动运算符:运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
>> 右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111
posted @ 2018-05-09 00:24  自由人皮卡卡  阅读(157)  评论(0)    收藏  举报