You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas移除字符串http/https前缀不生效及报错问题排查

错误原因分析
  • 第一种lstrip方法错误:lstrip参数传入的是字符集合而非完整匹配字符串,只要字符串开头的字符在传入的'http://'字符集合内(包括h、t、p、:、/)都会被移除,所以会误删不带前缀的域名首字符。
  • 第二种Series.replace方法错误:该方法默认是全值匹配,只有整行内容完全等于http://才会被替换,同时参数格式错误,多值替换需传入字典{'http://':'', 'https://':''},且要指定regex=True才能做子串匹配。
  • 第三种str.replace方法错误:str.replace的入参要求是(pattern, repl, ...),你将两个参数打包为元组传入第一个位置,导致缺少第二个替换值参数,触发报错。
  • 第四种lsplit方法错误:不带http/https前缀的域名不存在//字符,拆分后只有1个元素,取索引为1的元素自然返回NaN。
正确解法

推荐使用正则匹配开头的前缀做替换,性能好且写法简洁:

full_list['domains'] = full_list['domains'].str.replace(r'^https?://', '', regex=True)

如果不想使用正则,可以用lambda做分支判断:

full_list['domains'] = full_list['domains'].apply(lambda x: x.split('//', 1)[1] if '//' in x else x)

内容的提问来源于stack exchange,提问作者NPD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 07:45:02