1.1.7 Python列表和字符串的项目转化,元组

一,涉及split()和join()两个函数
str.split()
这个内置函数实现的是将str转化为list
>>> a="I am a boy.hello"
>>> a.split(".") #按字符.分隔
['I am a boy', 'hello']
>>> a
'I am a boy.hello'
>>> a.split() #当是吗都不写时,按空格分隔
['I', 'am', 'a', 'boy.hello']
join可以说是split的逆运算
>>> b
['I', 'am', 'a', 'boy.hello']
>>> "".join(a)
'I am a boy.hello'
>>> ",".join(a)
'I, ,a,m, ,a, ,b,o,y,.,h,e,l,l,o'
>>> s = "I am, writing\npython\tbook on line"
>>> s
'I am, writing\npython\tbook on line'
>>> print s
I am, writing
python book on line
>>> s.split()
['I', 'am,', 'writing', 'python', 'book', 'on', 'line']
>>> " ".join(s.split())
'I am, writing python book on line'
二,元组
>>> t=123,"abc",["come","here"]
>>> t
(123, 'abc', ['come', 'here'])
>>> type(t)
<type 'tuple'>
例子将对象作为一个新类型:tuple(元组),赋值给了变量t;元组是用圆括号括起来的,元素之间用逗号隔开。
元组也是一种序列,这一点与列表、字符串类似。它的特点就是其中的元素不能更改,这一点与列表不同,倒是跟字符串类似;它的元素又可以是任何类型的数据,这一点与列表相同,但不同于字符串。
元组的索引:
>>> t
(123, 'abc', ['come', 'here'])
>>> type(t)
<type 'tuple'>
>>> t
(123, 'abc', ['come', 'here'])
>>> t[0]
123
>>> t[1:]
('abc', ['come', 'here'])
>>> t[2][0]
'come'
如果一个元组中只有一个元素,应该在该元素后面加一个半角的英文逗号:
>>> a=(3)
>>> type(a)
<type 'int'>
>>> a=(3,)
>>> type(a)
<type 'tuple'>
列表和元组之间可以实现转化,分别使用list()和tuple()实现:
>>> t
(123, 'abc', ['come', 'here'])
>>> a=list(t) #元组tuple转列表list
>>> a
[123, 'abc', ['come', 'here']]
>>> b=tuple(a) #列表list转元组tuple
>>> b
(123, 'abc', ['come', 'here'])
一般根据元组特点,可以确定它的使用的情景:
元组比列表操作速度快。如果定义了一个值的常量集,并且唯一要用它做的是不断地遍历(遍历是一种操作,读者可以看后面的for循环)它,请使用元组代替列表。
如果对不需要修改的数据进行“写保护”,可以使代码更安全,这时使用元组而不是列表。如果必须要改变这些值,则需要执行元组到列表的转换。
元组可以在字典(另外一种对象类型,请参考后面的内容)中被用作key,但是列表不行。因为字典的key必须是不可变的,元组本身是不可改变的。
元组可以用在字符串格式化中。
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值