Python笔记:string,tuple,list,dictionary的区别(之一,基本用法与区别)

Python的数据结构中,string,tuple,list,dictionary,互相之间既有相似,又有区别,容易混淆。笔记一共两篇,本篇主要记录各自的基本用法与区别,下一篇《Python笔记:string,tuple,list,dictionary的区别(之二,高级用法与类型转换)》是他们的高级用法与类型转换的方法。

0.基本区别

Namemutableiterableslicingaccessingexpressions
stringnoyesyesnumber index“abcd”
tuplenoyesyesnumber index(‘a’,‘b’,‘c’,‘d’,‘abcd’)
listyesyesyesnumber index[‘a’,‘b’,‘c’,‘d’,‘abcd’]
dictionaryyesyesnokeys index{‘1’:‘a’,‘2’:‘b’}

1.string

string,字符串类型。python中没有单独的字符类型,一个字符也可以被看成是字符串类型,只有一个字符元素。单双引号无区别。
string,不可修改元素,immutable;可以用于循环条件,iterable;可以分片访问,slicing;通过数字索引来访问。从0开始,用-1表示最后一个元素。

x_str = 'abc'
y_str = 'defg'
ExpressionResultDescription
x_str[0] = ‘b’errorimmutable
for x in x_stra b citeration
x_str[0:3]‘abc’slicing
x_str[0]‘a’number indexing

其他常见用法

ExpressionResultDescription
len(x_str)3length
x_str + y_str‘abcdefg’concatenation
x_str * 2‘abcabc’repetition
‘a’ in x_strTruemembership

2.tuple

tuple,不可修改元素,immutable;可以用于循环条件,iterable;可以分片访问,slicing;通过数字下标来访问。具体结果如下表所示。

x_tuple = ('Peggy',4)
y_tuple = ('Susie',3)
ExpressionResultDescription
x_tuple[0] = ‘George’errorimmutable
for x in x_tuplePeggy, 4iteration
x_tuple[0:1](‘Peggy’,) 注意这个逗号slicing
x_tuple[0]‘Peggy’number indexing

其他常见用法

ExpressionResultDescription
len(x_tuple)2length
x_tuple + y_tuple(‘Peggy’, 4, ‘Susie’, 3)concatenation
x_tuple * 2(‘Peggy’, 4, ‘Peggy’, 4)repetition
‘Peggy’ in x_tupleTruemembership

3.list

list, 元素可修改,mutable;可以用于循环条件,iterable;可以分片访问,slicing;通过数字下标来访问。具体结果如下表所示。

x_list = ['Peggy',4]
y_list = ['Susie',3]
ExpressionResultDescription
x_list[0] = ‘George’x_list = [‘George’,4]mutable
for x in x_tupleGeorge, 4iteration
x_list[0:1][‘George’] 这里没有逗号slicing
x_list[0]‘George’number indexing

其他常见用法

ExpressionResultDescription
len(x_tuple)2length
x_list + y_list[‘George’, 4, ‘Susie’, 3]concatenation
x_list * 2[‘George’, 4, ‘George’, 4]repetition
‘Peggy’ in x_listFalsemembership

4.dictionary

dictionary, 元素可修改,mutable;可以用于循环条件,iterable;无法分片访问。元素必须成对出现,names:keys,中间用冒号隔开,一对name-key是一个元素,元素之间使用逗号隔开,并且只能通过names索引keys,

x_dict = {'Peggy':4,'George':3}
y_dict = {'Susie':4,'Daniel':5}

常见用法中,dictionary 不能使用‘+’和‘*’进行扩展。其他用法详见后面代码部分。

ExpressionResultDescription
len(‘x_dict’)2length
‘Peggy’ in x_dictTruemembership

分别按key访问values,keys和values

print(x_dict['Peggy'])
print(x_dict.keys())
print(x_dict.values())
4
dict_keys(['Peggy', 'George'])
dict_values([4, 3])

循环访问dictionary

for name, age in x_dict.items():
    print(name)
    print(age)
Peggy
4
George
3

增加元素

x_dict['Sussi'] = 5
print(x_dict)
{'Peggy': 4, 'George': 3, 'Sussi': 5}

###参考链接

  1. Python - Lists https://www.tutorialspoint.com/python/python_lists.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值