python学习
python3基础语法
python3基本数据类型
数字(Number)
字符串(String)
列表(List)
元组(Tuple)
字典(Dictonary)
本文档使用 MrDoc 发布
-
+
首页
python3基本数据类型
#### 变量创建 python中的变量不要声明。每个变量在使用前得必需赋值,变量赋值后该变量才会被创建。在python中,变量就是变量,没有类型,我们所说的类型是指变量内存中存储的对象的类型。 我们使用(=)进行赋值操作。 等号左侧为变量名称,右侧为变量存储的值。例如: ``` counter = 1000 miles = 1000.2 name = 'happyboy' print(counter) print(miles) print(name) ``` 运行结果: ``` 1000 1000.2 happyboy ``` #### 多个变量赋值 python允许同时为多个变量赋值。例如: ``` a = b = c = 1 ``` 也可以为多个对象指定多个变量: ``` # 将整型对象1分配给变量a,将浮点型对象1.0分配给变量b,将字符串对象happyboy分配给变量c a, b, c = 1, 1.0, 'happyboy' ``` #### 标准数据类型 python3中有六个标准的数据类型: * Number(数字) * String(字符串) * List(列表) * Turple(元组) * Set(集合) * Dictionary(字典) python3的六个标准数据类型中: * 不可变数据(3个):Number,String, Turple * 可变数据(3个):List, Set, Dictionary #### Number(数字) python3支持int,float,bool,complex 在python3中,只有一种整型类型int,表示长整型,没有其他整型类型如long。 数值类型的赋值和计算都是很直观的。内置**type()函数**可以用来查询变量所指的对象类型。 ``` a, b, c, d = 20, 5.5, True, 4 + 3j print(type(a), type(b), type(c), type(d)) ``` 运行结果: `<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>` 此处还可以用**isinstance**来判断: ``` a, b, c, d = 20, 5.5, True, 4 + 3j # isinstance print(isinstance(a, int)) ``` 运行结果: `True` isinstance与type()函数的区别: * type()不会认为子类是一种父类类型。 * isinstance()会认为子类是一种父类类型。 ``` class A: pass class B(A): pass # type() print(type(A()) == A) print(type(B()) == A) # isinstance() print(isinstance(A(), A)) print(isinstance(B(), A)) ``` 运行结果: ``` True False True True ``` ##### 数值运算 数值运算部分注意: * 除法:2 / 4 #得到一个浮点数;2 // 4 #得到一个整数 * 取余:17 % 3 * 乘方:2 ** 5 **注意**:在混合运算时,python会把整型转换为浮点数然后再参与计算。 #### 字符串(String) python中的字符串用'或者”,同时使用\转义特殊字符。 索引值以0开头,-1为末尾开始位置。 +为字符串的连接符,星号*****表示复制当前字符串,紧跟的数字为复制次数。 注意,Python 没有单独的字符类型,一个字符就是长度为1的字符串。与 C 字符串不同的是,Python 字符串不能被改变。向一个索引位置赋值。如word[0] = 'm'为错误 #### 列表(List)(重点掌握) * List是python中使用最频繁的数据类型。 * 列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,他支持数字,字符串甚至嵌套列表。 * 列表表示方法为使用[],元素之间使用逗号进行隔开。 * 和字符串一样,列表可以被索引和截取,**列表截取后返回以个包含元素的新列表**,语法为:变量[头下标:尾下标] * 索引值以0为开头,以-1为末尾开始。 * 加号 + 是列表连接运算符,星号 ***** 是重复操作。 * 与Python字符串不一样的是,列表中的元素是可以改变的 例子: ``` list = ['abcd', '1', '2.2', 'happyboy'] tinylist = ['is', 'me'] print(list) # 输出完整列表 print(list[0]) # 输出列表第一个元素 print(list[-1]) # 输出列表最后一个元素 print(list[1:3]) # 输出列表第二个元素到第4个元素 print(list[:]) # 输出列表所有元素 print(list + tinylist) # 列表连接 print(list * 2) # 列表重复 # 改变列表元素 list[3]='happyboysrt' print(list[3]) ``` 运行结果: ``` ['abcd', '1', '2.2', 'happyboy'] abcd happyboy ['1', '2.2'] ['abcd', '1', '2.2', 'happyboy'] ['abcd', '1', '2.2', 'happyboy', 'is', 'me'] ['abcd', '1', '2.2', 'happyboy', 'abcd', '1', '2.2', 'happyboy'] happyboysrt ``` **注意:** Python 列表截取可以接收第三个参数,参数作用是截取的步长,如果第三个参数为负数表示逆向读取,以下实例用于翻转字符串: ``` def reverseWord(input): # 通过空格将字符串分隔,把各个单词分隔为列表 inputWords = input.split(" ") # 翻转字符串 inputWords = inputWords[-1::-1] # 重新组合字符串 output = ' '.join(inputWords) return output if __name__ == "__main__": input = "I like pingpong" rw = reverseWord(input) print(rw) ``` 运行结果:`pingpong like I` #### 元组(Tuple) 元组(tuple)与列表类似,不同之处在于元组的元素不能更改。 * 元组写在()内,元素之间使用逗号隔开,元组中元素的类型也可以不相同。 * 元组与字符串类似,可以被索引且下标索引从0开始,-1为从末尾开始,也可以截取,方法都是一样的。 * 虽然元组不可变,但是可以包含可变的元素。如列表。 * 构造包含0个元素或1个元素的元组比较特殊,所以有一些额外的语法规则:`tup1 = () #空元组;tup2 = (20,) #一个元素,需要在元素后面添加逗号` * string, list ,tuple都属于sequence(序列) * 元组也可以使用+号进行拼接 例子: ``` tuple = ('abce', 1, 1.2, 'happyboy') tinytuple = ('is', 'me') print(tuple) # 输出完整元组 print(tuple[0]) # 输出元组第一个元素 print(tuple[1:3]) # 输出元组第二个元素到第四个元素 print(tuple[2:]) # 输出元组第三个元素到最后所有 print(tinytuple * 2) # 重复元组两次 print(tuple + tinytuple) # 元组拼接 ``` 运行结果: ``` ('abce', 1, 1.2, 'happyboy') abce (1, 1.2) (1.2, 'happyboy') ('is', 'me', 'is', 'me') ('abce', 1, 1.2, 'happyboy', 'is', 'me') ``` #### 集合(Set) * 集合(Set)是由一个或数个形态各异的大小整体组成,构成集合的事物称作元素。 * 基本功能是进行成员关系测试和删除重复元素。 * 可以使用大括号{}或者set()函数创建集合,创建一个空集合必须是set(),因为{}是创建空字典的。创建格式:`parame = {value1,value2,......}或者set(value)` 例子: ``` student = {'TOM', 'JIM', 'MARY', 'TOM'} print(student) # 自动去除重复元素 # 成员测试 if 'ROSE' in student: print('ROSE在集合中') else: print('ROSE不在集合中') # set可以进行集合运算 a = set('abracadabra') b = set('alacazam') print(a) print(b) print(a - b) # a和b的差集 print(a | b) # a和b的并集 print(a & b) # a和b的交集 print(a ^ b) # a和b中不同时存在的元素 ``` 运行结果: ``` {'MARY', 'TOM', 'JIM'} ROSE不在集合中 {'c', 'd', 'a', 'b', 'r'} {'z', 'c', 'l', 'a', 'm'} {'d', 'b', 'r'} {'z', 'c', 'd', 'l', 'a', 'b', 'r', 'm'} {'a', 'c'} {'b', 'z', 'd', 'r', 'l', 'm'} ``` #### 字典(Dictionary)(重要) 字典(dictionary)是python中另外一个非常有用的内置数据类型。 * 列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键值对实现存取的。 * 字典是一种映射类型,用{}标识,它是一个key:value的集合 * 键key必须使用不可变类型(如字符串) * 在同一个字典中,key的值必须是唯一的。 例子: ``` dict = {} dict['stu1'] = 'TOM' dict['stu2'] = 'MARY' dict[2] = "22122" print(dict) # 输出字典 print(dict['stu1']) # 输出字典中键stu1对应的值 print(dict.keys()) # 输出字典中的所有键 print(dict.values()) # 输出字典中所有值 ``` 结果: ``` {'stu1': 'TOM', 'stu2': 'MARY', 2: '22122'} TOM dict_keys(['stu1', 'stu2', 2]) dict_values(['TOM', 'MARY', '22122']) ``` #### python的数据类型转换 有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。 
happyboysrt
2025年2月24日 20:11
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
PDF文档(打印)
分享
链接
类型
密码
更新密码