익명 함수를 사용하여 filter()
에 대해 여러 가지 예제를 시도했지만 문자열에 사용하는 한 항상 이상한 결과가 나타납니다. 다음은 예입니다.`filter()`가 Python 2.x와 3.x 사이에서 변경 되었습니까?
>>>print(filter(lambda x: x.isdigit(), "aas30dsa20"))
<filter object at 0x00000000035DE470>
문자열이 없으면 모든 것이 정상적으로 작동합니다. 예 : 나는 list()
기능 부분을 제거하면 그런데
>>> print(list(filter(lambda x: x >= 30 and x <= 70, [x**2 for x in range(1,11)])))
[36, 49, 64]
는 문자열의 경우와 유사한 문제가 나타납니다
>>> print(filter(lambda x: x >= 30 and x <= 70, [x**2 for x in range(1,11)]))
<filter object at 0x00000000037BFDD8>
내가
[yes] (https://docs.python.org/3.0/whatsnew/3.0.html#views-and-iterators-instead-of-lists). – jonrsharpe