从给定列表中找出只出现一次的数,如:给出[1,2,2,3,1,4,3],返回4。
时间: 2023-10-16 08:10:04 浏览: 28
可以使用字典来实现,字典的键为列表中的元素,值为元素出现的次数。遍历列表,统计每个元素出现的次数,然后再遍历一遍字典,找到值为1的键即可。代码如下:
```python
def find_single_num(nums):
count_dict = {}
for num in nums:
if num in count_dict:
count_dict[num] += 1
else:
count_dict[num] = 1
for num in count_dict:
if count_dict[num] == 1:
return num
```
测试一下:
```python
>>> nums = [1,2,2,3,1,4,3]
>>> find_single_num(nums)
4
```
相关问题
从给定列表中找出只出现一次的数,如:给出[1,2,2,3,1,4,3],返回4 的python代码
好的,以下是一种实现方式:
```python
def find_single_number(nums):
"""
在给定列表中找出只出现一次的数
:param nums: 给定列表
:return: 只出现一次的数
"""
# 使用字典来记录每个数出现的次数
count_dict = {}
for num in nums:
count_dict[num] = count_dict.get(num, 0) + 1
# 遍历字典,找出只出现一次的数
for num, count in count_dict.items():
if count == 1:
return num
# 如果没有找到只出现一次的数,则返回 None
return None
```
使用示例:
```python
nums = [1, 2, 2, 3, 1, 4, 3]
result = find_single_number(nums)
print(result) # 输出 4
```
希望能帮到您!
从给定列表中找出只出现一次的数,如:给出[1,2,2,3,1,4,3],返回4,用python写
可以使用Python中的字典来记录每个数字出现的次数,然后再遍历字典找出只出现一次的数字。代码如下:
```python
def find_unique_num(nums):
num_counts = {}
for num in nums:
if num in num_counts:
num_counts[num] += 1
else:
num_counts[num] = 1
for num, count in num_counts.items():
if count == 1:
return num
return None # 如果没有只出现一次的数字,返回None
nums = [1, 2, 2, 3, 1, 4, 3]
print(find_unique_num(nums)) # 输出 4
```
首先创建一个空字典`num_counts`,然后遍历`nums`中的每个数字,如果该数字已经在字典中,则将其对应的值加1,否则将该数字加入字典并将其对应的值设为1。接着再次遍历字典,找出只出现一次的数字并返回。