Python的数据类型(内置类型)
2014-05-08 16:53
155 查看
Python提供了功能强大的对象类型,作为语言固有的一部分,在解决问题之前不需要为对象的实现书写代码。这些对象类型被称为内置类型。
Python内置对象类型有:Number(数字)、String(字符串)、List(列表)、Directory(字典)、Turple(元组)、File(文件)。
1、Number(数字):
C语言的基本数据类型有:数值类型和字符类型(char),数值类型包括整型(整型、长整型、短整型)和浮点型(单精度、双精度)。
Python包括整数和浮点数,整数相当于C语言中的长整型,浮点数相当于C语言的double类型。十六进制数和八进制数和C语言的表示是一样的,分别是以0、0x/0X开头。
另外,python还支持复数类型,复数常量由“实部+虚部”构成,从本质上将是用一堆浮点数实现的。
混合类型转化:和C语言一样,向更高级数据类型转化。
涉及到数字,肯定要学习Python表达式运算符。Python的一些表达式操作和其他语言是一样的,如:
数学操作:+,-,*,/,%;
按位操作:&,|,~,^(异或);
移位运算:>>, <<;
比较操作:==,!=
有些是python特有的,如:
逻辑运算:or,not,and;
身份测试: is,is not
序列成员关系测试:in, is not in
生成匿名函数:lambdaargs:expression
2、String(字符串):
C语言有字符类型,字符数组可以对字符串进行操作。
字符串常量可以用单引号,也可以用双引号,效果是一样的。
合并:+
重复:*
索引:和C语言一样,Python的偏移从0开始。与C语言不同的是,Python还允许用负偏移索引,从后往前,索引号为-1,-2…,负索引号加上字符串长度即得到正索引号。
分片:分片就是分段取字符串。s[m,n],m代表起始的字符位置(从0开始),一直到n-1这个字符,也可以s[m:]或者s[:-1]。
修改字符串的内容:python的字符串为不可变序列,不能在原处改变一个字符串。可以通过索引和‘+’
输入的格式‘theseare my %d %s’%(22, ‘penciles’)
字符串模块:import string
3、List(列表):
列表是可变序列。
列表用[] 表示,列表可以包含任何种类的对象:数字、字符串、其他列表。
列表的操作:
列表的一些操作和字符串是相同的,可以通过下表索引、分片、用len求长度、用+合并、用*重复、用in表示成员关系。
列表特有的操作有:
增长append、排序sort、查找index、反转inverse;索引赋值、分片赋值。可以用del删除列表中的某项或者某个分片。
个人觉得列表类似于C语言中的数组,只不过数组中存放的是相同类型的数据。
4、Directory(字典):
列表是有序的对象集合,通过偏移存取;字典是无序的集合,通过键来存取。
字典用{}表示。
5、Turple(元组):
元组由简单的对象组构成,除了不能原位改变,而且通常携程一串圆括号()中的项以外,元组与列表类似。元组有列表的大多数属性。
???有了列表,为何还要用元组?
元组的不可变性可以提供某些整体性,在一个程序中一个元组不会被另一个引用改变。列表可以用于想变动的有序集合的工具;元组则处理其他事情。
6、File(文件):
文件操作主要是文件的读写,需要注意文件读写的类型。
后续会继续补充。
Python内置对象类型有:Number(数字)、String(字符串)、List(列表)、Directory(字典)、Turple(元组)、File(文件)。
1、Number(数字):
C语言的基本数据类型有:数值类型和字符类型(char),数值类型包括整型(整型、长整型、短整型)和浮点型(单精度、双精度)。
Python包括整数和浮点数,整数相当于C语言中的长整型,浮点数相当于C语言的double类型。十六进制数和八进制数和C语言的表示是一样的,分别是以0、0x/0X开头。
另外,python还支持复数类型,复数常量由“实部+虚部”构成,从本质上将是用一堆浮点数实现的。
混合类型转化:和C语言一样,向更高级数据类型转化。
>>> import math >>> pow(2,2) 4 >>> abs(-2) 2
涉及到数字,肯定要学习Python表达式运算符。Python的一些表达式操作和其他语言是一样的,如:
数学操作:+,-,*,/,%;
按位操作:&,|,~,^(异或);
移位运算:>>, <<;
比较操作:==,!=
有些是python特有的,如:
逻辑运算:or,not,and;
身份测试: is,is not
序列成员关系测试:in, is not in
生成匿名函数:lambdaargs:expression
2、String(字符串):
C语言有字符类型,字符数组可以对字符串进行操作。
字符串常量可以用单引号,也可以用双引号,效果是一样的。
合并:+
重复:*
索引:和C语言一样,Python的偏移从0开始。与C语言不同的是,Python还允许用负偏移索引,从后往前,索引号为-1,-2…,负索引号加上字符串长度即得到正索引号。
分片:分片就是分段取字符串。s[m,n],m代表起始的字符位置(从0开始),一直到n-1这个字符,也可以s[m:]或者s[:-1]。
修改字符串的内容:python的字符串为不可变序列,不能在原处改变一个字符串。可以通过索引和‘+’
输入的格式‘theseare my %d %s’%(22, ‘penciles’)
字符串模块:import string
>>> s2 = "block" >>> print(s2) block
>>> len('adaaa') 5 >>> 'abc'+'aaa' 'abcaaa' >>> 'a'*5 'aaaaa' >>> s = 'abcdefg' >>> s[0], s[2] ('a', 'c') >>> s[1:3] 'bc' >>> s[1:] 'bcdefg' >>> s[:-1] 'abcdef'
>>> s = 'span' >>> s = s + ’spam!' SyntaxError: invalid character in identifier >>> s = s + 'spam!' >>> s 'spanspam!' >>> s = s[:4] + 'burger' + s[-1] >>> s 'spanburger!'
>>> a = '123' >>> 'i am %s' %a
>>> s.upper() 'ABCDEFG' >>> s = 'abcdefg' >>> s.upper() 'ABCDEFG' >>> s.lower() 'abcdefg'
>>> s.find('a') 0 >>> s.find('l') -1
3、List(列表):
列表是可变序列。
列表用[] 表示,列表可以包含任何种类的对象:数字、字符串、其他列表。
列表的操作:
列表的一些操作和字符串是相同的,可以通过下表索引、分片、用len求长度、用+合并、用*重复、用in表示成员关系。
列表特有的操作有:
增长append、排序sort、查找index、反转inverse;索引赋值、分片赋值。可以用del删除列表中的某项或者某个分片。
个人觉得列表类似于C语言中的数组,只不过数组中存放的是相同类型的数据。
>>> len([1,2,3]) 3 >>> [1,2,3]+[4,5,6] [1, 2, 3, 4, 5, 6] >>> l = ['abc', 'efg','fgf'] >>> l[0] = 'aaa' >>> l ['aaa', 'efg', 'fgf'] >>> l.append('aaa') >>> l ['aaa', 'efg', 'fgf', 'aaa'] >>> l.sort() >>> l ['aaa', 'aaa', 'efg', 'fgf'] >>> del l[0] >>> l ['aaa', 'efg', 'fgf']
4、Directory(字典):
列表是有序的对象集合,通过偏移存取;字典是无序的集合,通过键来存取。
字典用{}表示。
>>> d = {'spam':2, 'eggs':1} >>> d {'spam': 2, 'eggs': 1} >>> d2 = {'food':{'spam': 2, 'eggs': 1}} >>> d2 {'food': {'spam': 2, 'eggs': 1}}
>>> d['eggs'] 1
>>> del d['eggs'] >>> d {'spam': 2} >>> len(d) 1
5、Turple(元组):
元组由简单的对象组构成,除了不能原位改变,而且通常携程一串圆括号()中的项以外,元组与列表类似。元组有列表的大多数属性。
???有了列表,为何还要用元组?
元组的不可变性可以提供某些整体性,在一个程序中一个元组不会被另一个引用改变。列表可以用于想变动的有序集合的工具;元组则处理其他事情。
>>> t = (0,1,2,3) >>> t (0, 1, 2, 3)
6、File(文件):
>>> myfile = open('e:\myfile.txt', 'w') >>> myfile.write() Traceback (most recent call last): File "<pyshell#96>", line 1, in <module> myfile.write() TypeError: write() takes exactly 1 argument (0 given) >>> myfile.write('hello text file\n') 16 >>> myfile.close() >>> myfile = open('e:\myfile.txt', 'r')TypeError: write() takes exactly 1 argument (0 given) SyntaxError: invalid syntax >>> myfile = open('e:\myfile.txt', 'r') >>> myfile.readline() 'hello text file\n' >>> 'hello text file\n' 'hello text file\n' >>>
文件操作主要是文件的读写,需要注意文件读写的类型。
后续会继续补充。
相关文章推荐
- python学习笔记之内置数据类型
- 深入学习Python内置数据类型之——字典(Dictionary)
- python计算非内置数据类型占用内存
- python的组合数据类型及其内置方法说明
- [Python学习第一天]内置数据类型介绍,万物皆对象!
- Python内置数据类型之Tuple
- python基础-内置数据类型
- Python内置数据类型与函数
- Python语言入门之内置数据类型
- python3 内置核心数据类型
- 【Python】内置数据类型
- Python中内置数据类型list,tuple,dict,set的区别和用法
- Python---数据类型内置/非内置方法
- python学习:不同括号代表的基本内置数据类型
- python内置数据类型:数字
- Python内置数据类型详解
- Python基础--常用数据类型(常用内置对象)
- Python3 -1-内置数据类型
- Python内置数据类型
- Python-内置数据类型