나는 홈페이지의 홈페이지를 만들려고했다. 첫째로 for 루프를 사용하여 목표를 달성했습니다. 내가 전에 사용 된 적이python reduce()가 None 요소를 건너 뛰는 이유는 무엇입니까?
home = ''
my_url = 'http://www.mysite.com/subdir/subdir2/index.html'
for item in my_url.split('/')[:3]:
home += item + '/'
print home
나는
'http://www.mysite.com/'
가 그럼 난에 걸쳐 감소 올 얻을 수있다(). 그래서 나는 그것이 샷을 얻을, 여기에 코드입니다 :
my_url = 'http://www.mysite.com/subdir/subdir2/index.html'
home = ''
home = reduce(lambda x,y : x + y + '/',my_url.split('/')[:3])
print home
그것의 없음을 ommit 없습니다 만 감소되어 내가
'http:/www.mysite.com/'
있어 이번 결과에 대한 설명은 무엇입니까?
그래, 난 그냥 그것을 할 URLLIB의 파서 기능을 사용할 수 this topic 알고, 그래서 토론
필터를 사용하여 None 요소를 제거하십시오. – sherpya
@sherpya 아니요, None 요소를 제외시키지 않으려 고합니다. reduce() 함수가 None elemnt를 건너 뛰고 결과를 'http : /www.mysite.com/ '이어야합니다.'http://www.mysite.com/ ' –
'reduce'는 아무 것도 생략하지 않습니다. 'None' 요소는 없습니다. 어디에서 발생했다고 생각합니까? –