编写程序,输入两个分别包含若干个整数的列表lstA和lstB,输出一个字典,要求使用列表lstA中的元素作为键,列表lstB中的元素作为值,并且最终字典中的元素数量取决于lstA和lstB中元素最少的列表数量。
时间: 2024-10-13 21:04:51 浏览: 58
编写程序,输入两个分别包含若干整数的列表LA、LB.py
5星 · 资源好评率100%
在Python中,你可以使用`zip()`函数结合`dict()`构造函数来实现这个需求。下面是一个简单的示例:
```python
def create_dict(lstA, lstB):
# 确保lstA和lstB长度相同或较短的列表决定字典大小
min_len = min(len(lstA), len(lstB))
# 使用zip创建键值对,不足部分填充None
result_dict = dict(zip(lstA[:min_len], lstB[:min_len]))
# 返回字典
return result_dict
# 示例:
lstA = [1, 2, 3, 4]
lstB = ['a', 'b', 'c']
output = create_dict(lstA, lstB)
print(output) # 输出: {1: 'a', 2: 'b', 3: 'c'}
# 如果其中一个列表更长,较长的部分不会被包含在字典中
longer_lst = [5, 6, 7, 8, 9]
output_with_longer = create_dict(lstA, longer_lst)
print(output_with_longer) # 输出: {1: 'a', 2: 'b', 3: 'c'}
```
在这个例子中,如果`lstA`和`lstB`长度不同,`zip()`会截断较短的列表,只保留能配对的部分。所以最后返回的字典长度取决于两列表中最短的那个。
阅读全文