4.数字与字符串类型

来源:互联网 发布:淘宝联盟佣金 编辑:程序博客网 时间:2024/06/14 08:30
----------------Python数据类型----------------
(1)数字
(2)字符串
(3)集合
(4)列表
(5)元组
(6)字典
------------------------------------------------------------------
 *数字类型:整型、长整型、浮点型、复数型
 —整型int
   ※整数int表示的范围:-2147483648 到 2147483648
     例如:0,100,-100
   ※int的范围示例:
     >>>num=2147483647     >>>type(num)     <type 'int'>
     注:本人使用的Python3.5.2版本,显示的是<class 'int'>
 —长整型long
   ※long的范围很大很大,几乎可以说任意大的整数均可以存储。
   ※为了区分普通整数和长整数,需要在整数后加L或小写l。
     例如:51856678L,-0x22345L
   ※示例:
     >>>num=1l   (!!!!注意后面不是数字1而是小写的字母l,个人建议还是用L比较好)     >>>type(num)     <type 'long'>     >>>num=999999999999999999     >>>type(num)     <type 'long'>
     注:Python3.5.2版本中如下:
     >>>num1=123     >>>type(num)     <class 'int'>     >>>num2=99999999999999999999999     >>>type(num)     <class 'int'>     >>>num3=123L     SyntaxError: invalid syntax
     提问:新版本是否修改了整型数据范围?(已百度,没找到答案)
           而且,新版本不能通过数字末尾加L的方式定义一个长整型数据!
 —浮点型float
   ※例如:0.0,12.0,-18.8,3e+7
   ※示例:
     >>>num=0.0     >>>type(num)     >>><type 'float'>     >>>num=12     <type 'int'>     >>>num=12.0     >>>type(num)     <type 'float'>
 —复数型complex
   ※复数举例:3.14j,8.23e-36j
   ※示例:
     >>>num=3.14j     >>>type(num)     <type 'complex'>     >>>num     3.1400000000000001j     >>>print num     3.14j


 *字符串类型string
   ※使用引号定义的一组可以包含数字、字母、符号(非特殊系统符号)的集合。
   ※strval='This is a test'
     strval="This is a test"
     strval="""This is a test"""
    (三重引号(docstring)通常用来制作字符串,在面向对象时详解)
    注:使用单双引号并没有区别!
   ※切片
     >>>a='abcde'     >>>a[1:4:1]   注:a[起始点:结束点:步长](切取结束点之前的部分,不包括结束点)     'bcd'     >>>a[:4] 表示从头开始取,结束点是a[4](不包括结束点)     'abcd'     >>>a[4:] 表示从a[4]开始取,一直到结尾     'e'     >>>a[::1] 表示从开头取到结尾,一步一取     >>>a[-1]  表示取字符串最后一位  注:如果使用负数的话,依次为a[-5]、a[-4]、a[-3]、a[-2]、a[-1](从小到大)     注:默认情况下Python正相取值,步长的正负确定取值的方向问题     >>>a[4:0:-1]     'edcb'
   ※%与format
     >>> a='shop'     >>> b=0     >>> s='book%s'%a     >>> s     'bookshop'     >>> s='book%d'%b     >>> s     'book0'     >>> s='book{}'.format(a)     >>> s     'bookshop'     >>> s='book{}'.format(b)     >>> s     'book0'
   ※转义字符
     \n  换行符         \\  表示\         \t  制表符         \*  表示一个单引号,而不是字符串结束
     \r  回车           \'' 表示一个双引号,而不是字符串结束


 *集合类型
   ※集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键。
   ※和其他容器类型一样,集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数(大小), 
     用 for 循环迭代集合的成员。但是因为集合本身是无序的,不可以为集合创建索引或执行切片(slice)操作,
     也没有键(keys)可用来获取集合中元素的值。
   ※集合(sets)有两种不同的类型:可变集合(set)和不可变集合(frozenset)。
     对可变集合(set),可以添加和删除元素,对不可变集合(frozenset)则不允许这样做。
     注意:可变集合(set)不是可哈希的,因此既不能用做字典的键也不能做其他集合中的元素。
           不可变集合(frozenset)则正好相反,即它们有哈希值,能被用做字典的键或是作为集合中的一个成员。
   ※创建集合类型和给集合赋值 
     >>> s = set('cheeseshop')      >>> s      set(['c', 'e', 'h', 'o', 'p', 's'])      >>> t = frozenset('bookshop')      >>> t      frozenset(['b', 'h', 'k', 'o', 'p', 's'])      >>> len(s), len(t)      (6, 6)      >>> s == t      False   ※访问集合中的值     >>> 'k' in t      True     >>> for i in s:      ...   print i      ...       c      e      h      o      p      s 
   ※更新集合,用各种集合内建的方法和操作符添加和删除集合的成员
     >>> s.add('z')      >>> s      set(['c', 'e', 'h', 'o', 'p', 's', 'z'])      >>> s.update('pypi')      >>> s      set(['c', 'e', 'i', 'h', 'o', 'p', 's', 'y', 'z'])      >>> s.remove('z')      >>> s      set(['c', 'e', 'i', 'h', 'o', 'p', 's', 'y'])      >>> s -= set('pypi')      >>> s      set(['c', 'e', 'h', 'o', 's'])
   ※删除集合
     >>> del s 
   ※成员关系 (in, not in)
     >>> s = set('cheeseshop')      >>> t = frozenset('bookshop')      >>> 'k' in s      False     >>> 'k' in t      True     >>> 'c' not in t      True
   ※集合等价/不等价
     >>> s == t      False     >>> s != t      True     >>> u = frozenset(s)      >>> s == u      True     >>> set('posh') == set('shop')      True
   ※差补/相对补集
     >>> s=set('bookshop')     >>> s     set(['b', 'h', 'k', 'o', 'p', 's'])     >>> t=set('shop')     >>> t     set(['h', 's', 'o', 'p'])     >>> s-t     set(['k', 'b'])

原创粉丝点击