欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

变量和数据类型

程序员文章站 2023-11-22 12:36:16
内容: 变量 字符串 数字和运算符 数据类型转换 一、变量 1.定义:指在计算机编程中与关联的标识符配对的内存存储位置,在使用时含相关类型的值,该值可以修改。 当Python变量被使用时,在内存里会产生两个动作:1.开辟新的内存地址;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