python 学习

Posted potatoknight

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 学习相关的知识,希望对你有一定的参考价值。

with open("filename") as f:
    for line in f.readlines():
        # do sth with line

 

删除 setup.py 安装的 Python 软件包

201143

CentOS 5.5 上通过 setup.py 安装了一个软件包。删除的时候发现 setup.py 没有 uninstall 选项。

在网上找了个简单的方法,2 个步骤可轻松完成卸载:

* 增加 –record 参数重新安装软件包,执行命令:

# python ./setup.py install --record install.txt

* 删除安装文件,执行命令:

# cat install.txt | xargs rm -rf

sudo python ./setup.py install

sudo python ./setup.py install --record install.txt ; cat install.txt | xargs rm -rf

 

 

命令行下查看pythonnumpy的版本和安装位置

1、查看python版本

方法一:

  python -V

  注意:‘-V‘‘V’为大写字母,只有一个‘-’

方法二:

  python --version  

  注意:‘--version\'中有两个‘-’

2、查看python安装位置

方法一: 

  python -c "import sys; print sys.executable"

方法二:

  python -c "import os; print os.sys.executable"

  python -c "import os; path = os.sys.executable;folder=path[0 : path.rfind(os.sep)]; print folder"

3、查看Numpy版本

python -c "import numpy; print numpy.version.version"

python -c "import numpy; print numpy.__version__"

4、查看Numpy安装路径

python -c "import numpy; print numpy.__file__"

 

python

a=0

if a:  #这个条件为假

  xxx

 

filter过滤 list 中的某些值

a = [1,1,1,2,3]

如果想把1去掉:

a = filter(lambda x: x != 1, a)

 

 

遍历字典dict

a = {1:’a’,2:’b’}

[(k,v) for (k,v) in a.items()]

 

int最大值

import sys

sys.maxint

 

解析URL参数

import urlparse

url = \'http://www.x.com/login.html?password=123456&usrname=pan\'

rs = urlparse.urlparse(url)

q = urlparse.parse_qs(rs.query)

print q​

 

查找字符串

a = ‘asdf’

a.find(‘sd’),返回1,字符串从0开始编码

如果没有找到,返回-1

 

正则表达式

m = re.search("(book)+","mebookbookme")

m.group()

http://www.cnblogs.com/wei-li/archive/2012/05/16/2505503.html

 

字典按照key或者value排序

cc_diff = sorted(cc_diff.items(), key=lambda (k, v): v, reverse=True)

最后cc_diff是一个(k,v)list

 

unicodeutf-8编码

CentOs上的系统环境是utf-8,但是从互联网上抓取下来的html文本是unicode编码,所以在使用之前全部通过u’some message’.encode(‘utf8)

默认情况下 ‘123’ + u’abc’会报错

一般情况下都是在同一种编码,比如utf-8下进行字符串之前的+操作,如果需要在+操作的时候自动将utf-8转换成unicode的话,可以使用

import sys

reload(sys)

sys.setdefaultencoding(\'utf8\')

 

python”main”函数

#hello.py

def foo():

    str="function"

    print(str);

if __name__=="__main__":

    print("main")

    foo()

 

查询类的所有属性

class foo():

  a=1

print vars(foo)

 

数组分片

a = [1,2,3,4]

注意 “:” 是位置的分隔符,x:y代表[x,y)这一段元素,二在numpy中,:代表的是所有的行或者列

a[:]全部元素

a[:3]3个元素

a[1:3] 12两个元素,所以从0开始

 

子模块引用上级模块

如果直接运行子模块,需要向sys.path中添加子模块父目录

from os import listdir

from os.path import abspath, isfile, isdir, join, dirname

import sys

file_parts = dirname(abspath(__file__)).split(\'/\')

parent_path = \'/\'.join(file_parts[:len(file_parts)-1])

print parent_path

sys.path.append(parent_path)

 

当前模块绝对路径

import os

print os.path.abspath(__file__)  // 文件绝对路径

print os.path.dirname(os.path.abspath(__file__))  //文件所在目录

 

文件或者目录是否存在

if os.path.exists(‘/usr/local/bin’)

 

创建目录

os.mkdir(‘xiachufang/machine_group’)’

 

命令行参数

import sys

 

print \'参数个数为:\', len(sys.argv), \'个参数。\'

print \'参数列表:\', str(sys.argv)

 

测试:

$ python test.py arg1 arg2 arg3

参数个数为: 4 个参数。

参数列表: [\'test.py\', \'arg1\', \'arg2\', \'arg3\']

 

 

去掉空白符

a = ‘1 2   3 (tab) 4 ‘

a = re.sub(‘\\s+’, ‘’, a)

 

找到list中指定元素的下表

a = [11, 22, 33]

a.index(22)返回1

 

class的成员和对象的成员

test.py中有如下代码:

class Kls(object):

    no_init = 0

    def __init__(self):

Python学习总结

学习 PyQt5。在我的代码片段中找不到错误 [关闭]

python 学习python语法的片段

python小白学习记录 多线程爬取ts片段

python ipython:机器学习片段

30 段 Python 实用代码