要求逐个输入参数,生成为一个列表strlist。不考虑输入格式有误的情况。 编写一个 judge( strlist )函数,判断该列表中是否有重复元素,如果没有重复元素则返回“没有重复的元素。”。如果列表中有重复的元素,则返回“有重复的元素。”
时间: 2024-05-05 11:16:55 浏览: 49
代码如下:
```python
def judge(strlist):
if len(strlist) == len(set(strlist)):
return "没有重复的元素。"
else:
return "有重复的元素。"
strlist = []
while True:
s = input("请输入参数:")
if s == "done":
break
strlist.append(s)
print(judge(strlist))
```
首先,定义了一个 judge 函数来判断列表中是否有重复元素。使用 set 函数可以将列表中的元素去重,如果去重后的长度与原列表长度相等,则说明列表中没有重复元素。
然后,通过一个 while 循环逐个输入参数,并将其添加到 strlist 列表中。当输入 done 时,跳出循环。最后,调用 judge 函数判断列表中是否有重复元素,并打印输出结果。
相关问题
编写函数writelistolfile( strlist, filename): 形参说明:strlist: 字符型列表,每个元素都是字符串,如slist=[“asd”,”:sdfff”,”ghjjj”] filename:带路径的文件名,如:在d:\ex\files.txt 函数返回值:无 函数功能:将列表strlist元素写入文件d:\ex\files.txt中,每个元素占一行。
可以使用以下代码实现:
```python
def writelisttofile(strlist, filename):
with open(filename, 'w') as f:
for s in strlist:
f.write(s + '\n')
```
在函数中,我们使用了Python的`with`语句来打开文件,并通过`open`函数指定了文件名和打开模式为写入模式。然后,我们遍历列表中的每个元素,将其写入文件中,并在每个元素后面加上一个换行符`\n`。最后,我们使用`with`语句自动关闭文件。
编写函数writelistolfile( strlist, filename): 形参说明:strlist: 字符型列表,每个元素都是字符串,如slist=[“asd”,”:sdfff”,”ghjjj”] filename:带路径的文件名,如:在d:\ex\files.txt 函数返回值:无 函数功能:将列表strlist元素写入文件d:\ex\files.txt中,每个元素占一行。 函数实现后调用函数测试其正确性。如:writelistolfile(slist).
以下是实现该函数的代码:
```python
def writelistolfile(strlist, filename):
with open(filename, 'w') as f:
for s in strlist:
f.write(s + '\n')
```
说明:
- 使用 `with` 语句打开文件,可以确保文件在使用完毕后被关闭,避免出现文件未关闭的情况。
- 使用文件对象的 `write` 方法将字符串写入文件,每个元素占一行,需要在字符串末尾添加换行符 `\n`。
调用函数的方式如下:
```python
slist = ['asd', ':sdfff', 'ghjjj']
filename = 'd:/ex/files.txt'
writelistolfile(slist, filename)
```
这将把字符串列表 `slist` 中的元素写入文件 `d:/ex/files.txt` 中,每个元素占一行。
阅读全文