当前位置: 移动技术网 > IT编程>脚本编程>Python > 变量和数据类型

变量和数据类型

2019年09月06日  | 移动技术网IT编程  | 我要评论

四平青年2二龙湖浩哥之风云再起,烟禩隐清,镜头参数

内容:

  • 变量
  • 字符串
  • 数字和运算符
  • 数据类型转换

 

一、变量

1.定义:指在计算机编程中与关联的标识符配对的内存存储位置,在使用时含相关类型的值,该值可以修改。

当python变量被使用时,在内存里会产生两个动作:1.开辟新的内存地址;2.赋予指定的变量值

注意:变量被指定的同时,必须强制赋初始值,否则将报错

2.多个变量赋值

如:

>>> a=b=c=1         # 多个变量赋值
>>> print(a,b,c)    # 打印变量
>>> 1 1 1           # 打印结果

3.变量值类型

包括:字符串(string)、数字(numeric)、元组(tuple)、列表(list)、字典(dictionary)


 

二、字符串

1.字符串使用

由单引号(' ')、双引号(" ")、三引号(''' ''')表示的任意字节字符组成,其中三引号中的字符串可以包含换行符制表符其他特殊字符等,如:

>>> text = '''你好,中国
中国万岁\n
繁荣、昌盛\t yeah!'''
>>> print(text)
你好,中国
中国万岁

繁荣、昌盛     yeah!

 2.字符串的基本操作

(1)字符串值读取

通过下标(index)如:

>>>text = 'we are family!'    #变量赋值
>>>text[1]                    #获取下标为1的字符
e                             #得到结果

切片:

>>> text[3:6]      #读取下标3-6的字符
>>> text[:6]       #读取下标0-6的字符
>>> text[:]        #读取整个字符串(感觉没什么意义)
>>> text[::2]      #从头到尾,步长为2(即每隔一个字符),读取对应字符
>>> text[-1]       #读取右边第一个字符
>>> text[-3:-1]    #从右往左,读取倒数第四、三、二个字符

注意:若注明了右下标,则右下标对应值不算入其中,如:

>>> name = '1234567'
>>> name[1:4]
'234'

2.字符串合并

字符串合并通过 “+” 号连接合并

3.字符串修改

字符串不能直接修改,是通过读取原有字符串进行合并来实现的,如:

>>> name = name + "hello"
>>> print(name)
1234567hello

4.字符串删除

>>> del(name)

5.获取字符串长度

>>> len(name)

6.r/r符号

作用类似 三引号,如:

>>> print('hello \nnooi\thahh')
hello
nooi    hahh
>>> print(r'hello \nnooi\thahh')
hello \nnooi\thahh

7.重复输出(*)

>>> print("hello" * 2)

8.格式字符串(%

print("i'm %s. i'm %d years old" % ('gogo', 10))

三、数字和运算符

数字(digital)包括:整数(integer)、浮点数(float)、复数(complex)、布尔(boolean)

1.算术运算符

加(+)、减(-)、乘(*)、除(/)、取模(%)、幂(**)、取整(//)

优先级:括号 > 幂 > 乘(除)> 取模 ( 取整) > 加(减)

2.整数

由正整数、零和负整数构成,不包括小数、分数等,在python中整数的长度不受限制,但受内存的限制

3.浮点数

在python中,浮点数就是带小数点的数,浮点数不一定是精确值,因为受内存限制,超过一定长度后,末尾取近似值,如:

>>> 10.0/3
3.3333333333333335

4.复数

>>> (2-3j).real
2.0
>>> (2-3j).imag
-3.0

5.布尔

and、or、not

6.二进制

在python中用 0b 开始表示二进制(早期的python版本不支持0b开头的二进制数)。如:

>>> 0b110101
53
>>> bin(17)
'0b10001'

 7.二进制位运算符

运算符 中文名称 运算规则描述
& 按位与运算符

a&b,参与运算的a,b,如果相应位数为1,则该位结果为1,否则为0

| 按位或运算符 a|b,只要对应二进制位一个为1,则结果为1,都为0时结果为0
^ 按位异或运算符 a^b,当对应的二进制位相异时,结果为1,相同时结果为0
~ 按位翻转运算符 ~a,将二进制位+1后乘以-1,a的按位翻转为:-(a+1)
<< 左移动运算符 a<<x,将a的二进制位全部向左移x位,高位丢弃,地位补0
>> 右移动运算符 a>>x,将a的二进制位全部向右移x位,低位丢弃,高位补0

二进制位运算符表

>>> #示例如下:
>>> 0b110110001&0b00101010 32 >>> 0b110110001|0b00101010 443 >>> 0b110110001^0b00101010 411 >>> ~0b110110001 -434 >>> 0b110110001<<3 3464 >>> 0b110110001>>3 54

 

 8.比较运算符

 包括:等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)

 9.优先级

 算术运算符(位运算符) >  比较运算符  >  逻辑运算符


 四、数据类型转换

>>> int(15.1)            #浮点数 > 整数
15               
>>> int('20')            #字符串 > 整数
20
>>> float(2)             #整数 > 浮点数
2.0
>>> float('23')          #字符串 > 浮点数
23.0
>>> complex(1,3)         #转复数
(1+3j)
>>> complex(2)           #整数 > 复数
(2+0j)
>>> complex('4')         #字符串 > 复数
(4+0j)
>>> str(4+2j)            #复数 > 字符串
'(4+2j)'
>>> bin(30)              #整数 > 二进制数
'0b11110'
>>> oct(16)              #整数 > 八进制数
'0o20'
>>> hex(55)              #整数 > 十六进制数
'0x37'
>>> chr(48)              #整数 > ascll码
'0'
>>> ord('b')             #ascll码 > 整数
98

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网