python读入不定行字符的问题解决:
stdin.readline()会读取行尾的换行符,使用strip()函数去掉:
示例
import sys from builtins import str ingredient_list = set() while True: line = sys.stdin.readline().strip() if line == '': break food_list = str(line).split(' ') for ingredient in food_list: ingredient_list.add(ingredient) print(len(ingredient_list))
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列。
注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符。
推荐学习:《Python教程》