首页 > 编程知识 正文

list去除空值 python,python去掉数组中的空字符串

时间:2023-05-05 12:31:49 阅读:178561 作者:2256

方法1(a ) ((n )、(1)、()、)、(Tuesday,may 05,2020 )、(n )、()、()、()、(n、)、(n )、) ) ) ) ) ) )此列表位于中间

list=[x.strip () for x in a]

执行时,将获得以下结果

[“,”、“1”、“,”、“Tuesday,may 05,2020”、“”通过for循环将所有不需要的内容转换为空。

我们有必要通过判断消除其中不需要的天空

list=[ x.strip (] forxinaifx.strip )!=' ' ] [‘1’,‘Tuesday,may 05,2020’]

总结:

该方法是去除strip ()、所有空白字符,使之为“”,然后通过判断进行过滤。 如果是单个字符,也可以用replace('n ',' )进行替换。 这种情况不适合不确定的列表。 在这种情况下,您需要确保您都是“n”的。

方法用filter函数判断空字符串,空字符串判定为False

filter(None,your_list ),none表示不输入函数,[x for x in your_list if x],还可以是包含参数的函数。

b=['n ','1',',',',' Tuesday,may 05,2020 ','n ',none]defnot_empty(s ) : return s and s.strip

[‘1’,‘Tuesday,may 05,2020’]

注意:过滤器会生成迭代器。 filterobjectat0x 00000208 DAC 98400

必须使用list(c )才能获取结果

方法在while循环中删除空字符串。

while ' ' in your _ list : your _ list.remove (' )可以总结这三种方法,但建议使用方法2。 因为他的执行速度最快。

测试方法:

d=timeit.timeit('filter(none,your_list ),' your_list=10*['a ',' b ',',',',',',',' c,',' b,' b,' b,' b,' b,=''] '、' your_list=10*['a '、' b '、'、'、'、'、'、'、'、'、' c '、'、'、'、'、'、'、d、e、'、f、g、nud

方法2:0.0001000000000004

方法1:0.01110370000000005

方法3:0.000635000000000036

知识点: Python有三个去除头尾字符、空格字符的函数。 这些按顺序是:

strip :用于删除包括n、r、t和“”的头尾字符和空格,例如“换行符”、“换行符”、“制表符”和“空格”

lstrip :用于排除首字符、空格、n、r、t、“换行符、换行符、制表符和空格

(rstrip )用于删除尾部字符、空白字符(包括换行符、制表符和空格) n、) r、) t和)

注意:所有这些函数只删除开头和结尾的字符,不删除中间的字符。

使用方法如下

string.strip([chars] )。

string.lstrip([chars] )。

string.RStrip([chars] )。

chars参数是可选的,如果chars为空,则缺省情况下删除字符串末尾的空格n、r、t和’

如果chars不为空,则chars会将函数分解为一个个字符并将其删除。

返回删除了头尾字符(或空白字符)的string的副本,并且string本身保持不变。

例如:

如果chars为空,则默认删除空白字符。 删除“ n”、“ r”、“ t”、“”、“str='abCD'print(str.strip )”头尾空格print(str.lstrip ) )

‘ABCD’

‘ABCD’

’ABCD’

2 .如果chars不为空,则chars会将函数分解为一个个字符并将其删除

str2=' 1a2b 12 c 21 ' print (str2. strip ) )删除头尾的1和2print ) )删除开头的1和2print ) str2.RStrint

‘a2b 12 c’

‘a2b 12 c 21’

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。