list列表和dict字典使用方法

1. list列表扩展的方式有几种(或者说添加元素的方法)

append追加到末尾

 list_data = [1, 2, 3]
 list.append(list_data, 4)
 print(list_data)
结果
[1, 2, 3,4]

extend通过迭代追加来扩展元素

 list_data = [1, 2, 3]
 str_data = '123'
 list.extend(list_data, str_data)
 print(list_data)
结果
[1,2,3,'1','2','3']

 insert在索引前插入对象 

list_data = [1, 2, 3]
list_data.insert(1, 4)
print(list_data)
结果
[1, 4, 2, 3]

2. 对["cherry", "litchi", "strawberry", "mangosteen", "pomelo", "pineapple", "pitaya", "durian"]进行默认排序

fruit_data = ["cherry", "litchi", "strawberry", "mangosteen", "pomelo", "pineapple", "pitaya", "durian"]
fruit_data.sort()
print(fruit_data)
结果
['cherry', 'durian', 'litchi', 'mangosteen', 'pineapple', 'pitaya', 'pomelo', 'strawberry']

   对上面的列表使用第三个字母进行排序

def sort_func(x):
     return x[2]
fruit_data = ["cherry", "litchi", "strawberry", "mangosteen", "pomelo", "pineapple", "pitaya", "durian"]
fruit_data.sort(key=sort_func)
print(fruit_data)
结果
['cherry', 'pomelo', 'mangosteen', 'pineapple', 'strawberry', 'durian', 'litchi', 'pitaya']

 

3. dict中所有方法的使用(先写源代码再写样例)

clear

(...)
       D.clear() -> None.  Remove all items from D.
       删除所有项目

dict_data = {1: 1, 2: 2}
dict_data.clear()
print(dict_data)
结果
{}

copy

(...)
       D.copy() -> a shallow copy of D
       浅拷贝

dict_data = {1: 1, 2: 2}
data = dict_data.copy()
print(dict_data, data)
结果
{1: 1, 2: 2} {1: 1, 2: 2}

 get
(self, key, default=None, /)
       Return the value for key if key is in the dictionary, else default.
       如果 key 在字典中,则返回 key 的值,否则返回默认值。
 

dict_data = {1: 1, 2: 2}
data = dict_data.get(1)
print(dict_data, data)
结果
{1: 1, 2: 2} 1

 items

(...)
       D.items() -> a set-like object providing a view on D's items
      一个类似集合的对象,提供字典项目的视图

dict_data = {1: 1, 2: 2, 3: 3}
data = dict_data.items()
print(dict_data, data)
结果
{1: 1, 2: 2, 3: 3} dict_items([(1, 1), (2, 2), (3, 3)])

 

   keys

(...)
       D.keys() -> a set-like object providing a view on D's keys
     一个类似集合的对象,提供 字典键上的视图

dict_data = {1: 1, 2: 2, 3: 3}
data = dict_data.keys()
print(dict_data, data)
结果
{1: 1, 2: 2, 3: 3} dict_keys([1, 2, 3])

  pop

(...)
       D.pop(k[,d]) -> v, remove specified key and return the corresponding value.
       删除指定的键并返回相应的值。

dict_data = {1: 1, 2: 2, 3: 4}
data = dict_data.pop(3)
print(dict_data, data)
结果
{1: 1, 2: 2} 4

       If key is not found, default is returned if given, otherwise KeyError is raised
       如果未找到 key,则返回 default(如果给定),否则引发 KeyError

dict_data = {1: 1, 2: 2, 3: 4}
data = dict_data.pop(4)
print(dict_data, data)
结果
KeyError: 4

 

 popitem

(self, /)
       Remove and return a (key, value) pair as a 2-tuple.
       删除(键、值)对并将其作为 二元组返回。

dict_data = {1: 1, 2: 2, 3: 4}
data = dict_data.popitem()
print(dict_data, data)
结果
{1: 1, 2: 2} (3, 4)

 Pairs are returned in LIFO (last-in, first-out) order.

       成对按后进先出(后进先出)顺序返回。


       Raises KeyError if the dict is empty.

       如果字典为空,则引发 KeyError。
   


   setdefault
(self, key, default=None, /)
       Insert key with a value of default if key is not in the dictionary.
       如果键不在字典中,则插入值为默认值的键。

dict_data = {1: 1, 2: 2, 3: 4}
data = dict_data.setdefault(4)
print(dict_data, data)
结果
{1: 1, 2: 2, 3: 4, 4: None} None

  Return the value for key if key is in the dictionary, else default.
       如果 key 在字典中,则返回 key 的值,否则返回默认值。

dict_data = {1: 1, 2: 2, 3: 4}
data = dict_data.setdefault(3)
print(dict_data, data)
结果
{1: 1, 2: 2, 3: 4} 4

 


   update

(...)
       D.update([E, ]**F) -> None.  Update D from dict/iterable E and F.

       从字典/可迭代 E 和 F 更新 D

dict_data = {1: 1, 2: 2, 3: 4}
dict_data1 = {1: 6, 4: 5, 5: 6}
dict_data.update(dict_data1)
print(dict_data)
结果
{1: 6, 2: 2, 3: 4, 4: 5, 5: 6}


       If E is present and has a .keys() method, then does:  for k in E: D[k] = E[k]

       如果 E 存在并且具有 .keys() 方法,则对于 E 中的 k:D[k] = E[k]


       If E is present and lacks a .keys() method, then does:  for k, v in E: D[k] = v

       如果 E 存在并且缺少 .keys() 方法,则对于 E 中的 k, v:D[k] = v


       In either case, this is followed by: for k in F:  D[k] = F[k]

       在任何一种情况下,这后面跟着:对于F中的k:D[k] = F[k]
   


   values
(...)
       D.values() -> an object providing a view on D's values

      在任何一种情况下,这后面跟着:对于F中的k:D[k] = F[k]

dict_data = {1: 1, 2: 2, 3: 4}
data = dict_data.values()
print(dict_data, data)
结果
{1: 1, 2: 2, 3: 4} dict_values([1, 2, 4])

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中的listdict有一些重要的区别。首先,list是有序的可变对象,可以存储多个元素,并且允许重复。列表中的元素可以通过索引进行访问和修改。而dict是无序的键值对集合,每个元素都由一个key和对应的value组成,key必须是不可变对象,而value可以是任意对象。在字典中,通过key可以快速查找对应的value,也可以对value进行添加、修改和删除操作。与list不同,dict内部的元素存放顺序和key放入的顺序无关。 另外,对于list,我们可以使用Python内置的sorted函数对其进行排序,但是对于dict,我们需要使用其他方法来根据key或者value进行排序。可以使用sorted函数对dict的key进行排序,也可以使用sorted函数结合lambda函数来对dict的value进行排序。 总结起来,list是有序的可变对象,用于存储多个元素,并且允许重复;而dict是无序的键值对集合,通过key来快速查找和操作对应的value。在排序方面,list可以直接使用sorted函数进行排序,而dict需要使用其他方法来实现排序。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [pythonlistdict比较](https://blog.csdn.net/Andrew_jdw/article/details/82684493)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [python列表list字典dict的区别](https://blog.csdn.net/qq_44728587/article/details/122767227)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Python sorted对listdict排序](https://download.csdn.net/download/weixin_38660579/12851159)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值