Не было необходимости в понимании списка:
for URL in dfkf['URL'][0:5].values:
r = requests.get(str(URL))
soup = BeautifulSoup(r.text, 'html.parser')
links = soup.find_all(text=re.compile('xml'), href=True)
if links:
x.append(links[0]['href'])
else:
x.append(list())
Редактировать: Возможно, лучше сделать x.append(None)
, чем x.append(list())
, если вам действительно не нужен пустой список в ваших результатах.