一些Python片段_5

本文最后更新于2014年10月17日,已超过 1 年没有更新,如果文章内容失效,还请反馈给我,谢谢!

1.获得用户和组信息

2.获得文件或者文件夹权限

3.查找大文件

之前的一篇文章中其实有介绍另一个多线程查找Top10大文件的Python代码,非常值得学习。

4.查看端口情况

5.Python 中如何删除一个列表 List 中多个符合条件的元素?

假设有一个列表:
a = [1, 1, 0, 2, 0, 0, 8, 3, 0, 2, 5, 0, 2, 6]

判断如果a列表中元素’2’前面的一个元素是’0’,那么删除这个元素’0’,请问该如何操作?
========
@刘缙

又:注意其他答案有些不能处理len(a) in [0,1]的情形
===
@tonic
如果真的是你这样的数据…变字符串join起来把所有的02变成2不就好了?
====
@Simon Luo

参考了python帮助文档里去除list中重复字符的代码。
===
@郭一凡

[1, 1, 2, 0, 0, 8, 3, 2, 5, 2, 6]
===
@绅士提督与不笑船

稍微实现了一下楼上 @tonic 的说法。
===
@玖道
功能应该能实现,但是如果考虑代码简洁程度或者效率,还是坐等更高明的答案了。

===
@匿名用户

@范子逸

@小生境

用numpy的话比较炫酷:

最后都要append(a[-1])

原文地址Python 中如何删除一个列表 List 中多个符合条件的元素?

注意可能出现的在进行了一次替代/pop之后可能会再次出现的“0 2”序列,第一种方法我可想不到,唉,o(╯□╰)o

6.自打印的Python脚本

 

=================

zip、filter、map、reduce、lambda

==Python中zip()函数用法举例 | 南柯一梦
定义:zip([iterable, …])
zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组成的list(列表)。若传入参数的长度不等,则返回list的长度和参数中长度最短的对象相同。利用*号操作符,可以将list unzip(解压),看下面的例子就明白了:

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b)
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c)
[(1, 4), (2, 5), (3, 6)]
>>> zip(*zipped)
[(1, 2, 3), (4, 5, 6)]

==Python 并行遍历zip()函数使用方法
zip()函数在运算时,会以一个或多个序列做为参数,返回一个元组的列表。同时将这些序列中并排的元素配对。

==Python中的map函数、zip函数、filter函数和reduce函数

在本文最上面刘缙的例子中之所以最后可以得到结果,是因为zip()函数本身就是一个迭代对象,会不停的往后进行迭代,所以才有用,唉,无知真可怕!
In [15]: zip?
Type: builtin_function_or_method
String form: <built-in function zip>
Namespace: Python builtin
Docstring:
zip(seq1 [, seq2 […]]) -> [(seq1[0], seq2[0] …), (…)]

Return a list of tuples, where each tuple contains the i-th element from each of the argument sequences. The returned list is truncated in length to the length of the shortest argument sequence.

一些参考链接:

声明: 除非注明,ixyzero.com文章均为原创,转载请以链接形式标明本文地址,谢谢!
https://ixyzero.com/blog/archives/1494.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注