Python中的列表、字典用法

列表是 Python 中一种非常重要的数据类型,它可以存储一组有序的元素。下面是一些常用的列表操作:

  • 创建列表:可以使用方括号 [] 来创建一个空列表,或者在方括号中添加一些元素来创建一个非空列表。例如:my_list = [] 或 my_list = [1, 2, 3]
  • 访问元素:可以使用索引来访问列表中的元素。索引从 0 开始,例如 my_list[0] 表示访问列表中的第一个元素。
  • 修改元素:可以通过索引来修改列表中的元素。例如 my_list[0] = 4 表示将列表中的第一个元素修改为 4。
  • 添加元素:可以使用 append() 方法在列表末尾添加一个新元素,或者使用 insert() 方法在指定位置插入一个新元素。例如 my_list.append(5) 或 my_list.insert(1, 6)
  • 删除元素:可以使用 del 语句删除指定位置的元素,或者使用 remove() 方法删除指定值的第一个匹配项。例如 del my_list[0] 或 my_list.remove(2)
  • 列表切片:可以使用切片操作来获取列表中的一部分元素。例如 my_list[1:3] 表示获取列表中从索引 1 到索引 2 的元素(不包括索引 3)。

Python 列表有许多内置方法,下面是一些常用的方法及其用法:

  • append(x):在列表末尾添加一个元素。例如:my_list.append(5)
  • extend(iterable):在列表末尾添加多个元素。例如:my_list.extend([1, 2, 3])
  • insert(i, x):在指定位置插入一个元素。第一个参数是要插入的位置,第二个参数是要插入的元素。例如:my_list.insert(1, 6)
  • remove(x):删除列表中第一个值为 x 的元素。如果没有这样的元素,则抛出 ValueError 异常。例如:my_list.remove(2)
  • pop([i]):删除并返回列表中指定位置的元素(默认为最后一个)。如果指定了索引 i,则删除并返回该位置的元素;否则删除并返回最后一个元素。例如:my_list.pop() 或 my_list.pop(1)
  • index(x[, start[, end]]):返回列表中第一个值为 x 的元素的索引。如果没有这样的元素,则抛出 ValueError 异常。start 和 end 参数用于指定搜索范围,可选。例如:my_list.index(3)
  • count(x):返回列表中 x 出现的次数。例如:my_list.count(2)
  • sort(key=None, reverse=False):对列表进行排序。key 参数用于指定排序依据,可选;reverse 参数用于指定是否按降序排序,默认为升序排序。例如:my_list.sort() 或 my_list.sort(reverse=True)
  • reverse():反转列表中的元素。例如:my_list.reverse()

列表搭配input输入的几种情况

1.多行输入:

在 Python 中,input() 函数用于从标准输入(通常是键盘)读取一行文本。

下面是一个简单的例子,它演示了如何使用 input() 函数读取用户输入的整数,并将它们存储到列表中:

my_list = []
n = int(input('请输入要添加的元素个数:'))
for i in range(n):
    x = int(input(f'请输入第 {i+1} 个元素:'))
    my_list.append(x)
print('列表中的元素为:', my_list)

在上面的代码中,我们首先创建了一个空列表 my_list,然后使用 input() 函数读取用户输入的元素个数,并将其转换为整数。接下来,我们使用 for 循环和 range() 函数遍历指定次数,每次循环都使用 input() 函数读取一个整数,并使用 append() 方法将其添加到列表中。最后,我们打印出列表中的所有元素。

2.单行输入但是是用字符分隔每个数据

如果你想从一行中读取多个使用特定字符分隔的数据,可以使用 input() 函数读取整行文本,然后使用字符串的 split() 方法将其分割为多个子串。

下面是一个简单的例子,它演示了如何从一行中读取多个使用逗号分隔的整数,并将它们存储到列表中:

my_list = []
line = input('请输入一行用逗号分隔的整数:')
for x in line.split(','):
    my_list.append(int(x))
print('列表中的元素为:', my_list)

在上面的代码中,我们首先创建了一个空列表 my_list,然后使用 input() 函数读取用户输入的一行文本。接下来,我们使用字符串的 split() 方法以逗号为分隔符将其分割为多个子串,并使用 for 循环遍历这些子串。对于每个子串,我们都将其转换为整数,并使用 append() 方法将其添加到列表中。最后,我们打印出列表中的所有元素。

如果是用空格进行分隔,只需要将split括号中的内容清空即可,即line.split()

字典也是 Python 中一种非常重要的数据类型,它可以存储键值对。下面是一些常用的字典操作:

  • 创建字典:可以使用花括号 {} 来创建一个空字典,或者在花括号中添加一些键值对来创建一个非空字典。例如:my_dict = {} 或 my_dict = {'a': 1, 'b': 2}
  • 访问元素:可以使用方括号 [] 来访问字典中的元素。例如 my_dict['a'] 表示访问字典中键为 'a' 的元素。
  • 修改元素:可以通过方括号 [] 来修改字典中的元素。例如 my_dict['a'] = 3 表示将字典中键为 'a' 的元素修改为 3。
  • 添加元素:可以通过方括号 [] 来添加新的键值对。例如 my_dict['c'] = 4 表示在字典中添加一个新的键值对 'c': 4
  • 删除元素:可以使用 del 语句删除指定键的键值对,或者使用 pop() 方法删除并返回指定键的值。例如 del my_dict['a'] 或 my_dict.pop('b')

Python 字典有许多内置方法,下面是一些常用的方法及其用法:

  • clear():删除字典中所有元素。例如:my_dict.clear()
  • copy():返回字典的浅拷贝。例如:new_dict = my_dict.copy()
  • fromkeys(seq[, value]):使用指定序列中的元素作为键创建新字典,如果提供了 value 参数,则将其作为所有键的值;否则所有键的值都为 None。例如:new_dict = dict.fromkeys(['a', 'b'], 1)
  • get(key[, default]):返回字典中指定键的值,如果键不存在,则返回 default 参数指定的值(默认为 None)。例如:my_dict.get('a') 或 my_dict.get('c', 0)
  • items():返回一个包含字典中所有键值对的视图对象。可以使用 for 循环遍历该视图对象。例如:for k, v in my_dict.items(): print(k, v)
  • keys():返回一个包含字典中所有键的视图对象。可以使用 for 循环遍历该视图对象。例如:for k in my_dict.keys(): print(k)
  • pop(key[, default]):删除并返回字典中指定键的值,如果键不存在,则返回 default 参数指定的值;如果没有提供 default 参数且键不存在,则抛出 KeyError 异常。例如:my_dict.pop('a') 或 my_dict.pop('c', 0)
  • popitem():删除并返回字典中最后一个键值对(Python 3.7 及以上版本),如果字典为空,则抛出 KeyError 异常。例如:k, v = my_dict.popitem()
  • setdefault(key[, default]):如果字典中存在指定键,则返回其值;否则在字典中添加该键,并将其值设为 default 参数指定的值(默认为 None),然后返回该值。例如:my_dict.setdefault('a', 0) 或 my_dict.setdefault('c', 3)
  • update([other]):使用其他字典或可迭代对象中的键值对更新字典。如果有重复的键,则覆盖原来的值。例如:my_dict.update({'c': 4, 'd': 5}) 或 my_dict.update([('c', 4), ('d', 5)])
  • values():返回一个包含字典中所有值的视图对象。可以使用 for 循环遍历该视图对象。例如:for v in my_dict.values(): print(v)

字典搭配Input的几种输入方法

1.多行输入

my_dict = {}
n = int(input('请输入要添加的键值对个数:'))
for i in range(n):
    key = input(f'请输入第 {i+1} 个键:')
    value = input(f'请输入第 {i+1} 个值:')
    my_dict[key] = value
print('字典中的键值对为:', my_dict)

在上面的代码中,我们首先创建了一个空字典 my_dict,然后使用 input() 函数读取用户输入的键值对个数,并将其转换为整数。接下来,我们使用 for 循环和 range() 函数遍历指定次数,每次循环都使用两次 input() 函数分别读取一个键和一个值,并将它们存储到字典中。最后,我们打印出字典中的所有键值对。

2.单行输入

如果你想从一行中读取多个键值对,可以使用 input() 函数读取整行文本,然后使用字符串的 split() 方法将其分割为多个子串。接下来,你可以遍历这些子串,并使用字符串的 split() 方法再次将它们分割为键和值。

下面是一个简单的例子,它演示了如何从一行中读取多个使用逗号分隔的键值对(每个键值对使用冒号分隔),并将它们存储到字典中:

my_dict = {}
line = input('请输入一行用逗号分隔的键值对(每个键值对用冒号分隔):')
for pair in line.split(','):
    key, value = pair.split(':')
    my_dict[key] = value
print('字典中的键值对为:', my_dict)

在上面的代码中,我们首先创建了一个空字典 my_dict,然后使用 input() 函数读取用户输入的一行文本。接下来,我们使用字符串的 split() 方法以逗号为分隔符将其分割为多个子串,并使用 for 循环遍历这些子串。对于每个子串,我们都再次使用字符串的 split() 方法以冒号为分隔符将其分割为键和值,并将它们存储到字典中。最后,我们打印出字典中的所有键值对。

如果有空格分隔的情况参考上面列表的修改方式,只需对split函数修改即可。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是Python字典的使用方法: 1. 创建字典: ```python # 使用大括号创建空字典 my_dict = {} # 使用大括号创建带有键值对的字典 my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'} # 使用 dict() 函数创建带有键值对的字典 my_dict = dict(key1='value1', key2='value2', key3='value3') # 从列表创建字典列表的元素是由键值对组成的元组 my_dict = dict([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')]) ``` 2. 访问字典的值: ```python # 使用键来访问字典的值 value = my_dict['key1'] print(value) # 输出:value1 # 使用 get() 方法来访问字典的值,如果键不存在,则返回指定的默认值 value = my_dict.get('key2', 'default') print(value) # 输出:value2 # 使用 keys() 方法获取字典的所有键 keys = my_dict.keys() print(keys) # 输出:dict_keys(['key1', 'key2', 'key3']) # 使用 values() 方法获取字典的所有值 values = my_dict.values() print(values) # 输出:dict_values(['value1', 'value2', 'value3']) # 使用 items() 方法获取字典的所有键值对 items = my_dict.items() print(items) # 输出:dict_items([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3')]) ``` 3. 更新字典: ```python 使用赋值语句更新字典的值 my_dict['key1'] = 'new value' print(my_dict) # 输出:{'key1': 'new value', 'key2': 'value2', 'key3': 'value3'} # 使用 update() 方法更新字典的值 my_dict.update({'key2': 'new value', 'key3': 'new value'}) print(my_dict) # 输出:{'key1': 'new value', 'key2': 'new value', 'key3': 'new value'} ``` 4. 删除字典的键值对: ```python # 使用 del 关键字删除指定的键值对 del my_dict['key1'] print(my_dict) # 输出:{'key2': 'new value', 'key3': 'new value'} # 使用 pop() 方法删除指定的键值对,并返回被删除的值 value = my_dict.pop('key2') print(value) # 输出:new value print(my_dict) # 输出:{'key3': 'new value'} # 使用 clear() 方法清空字典的所有键值对 my_dict.clear() print(my_dict) # 输出:{} ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值