收集的几个Python小技巧分享

获得当前机器的名字:


def hostname():

        sys = os.name  

  

        if sys == 'nt':  

                hostname = os.getenv('computername')  

                return hostname  

  

        elif sys == 'posix':  

                host = os.popen('echo $HOSTNAME')  

                try:  

                        hostname = host.read()  

                        return hostname  

                finally:  

                        host.close()

        else:  

                return 'Unkwon hostname'

获取当前工作路径:


import os

 

os.getcwd()

#or

#os.curdir just return . for current working directory. #need abspath() to get full path. os.path.abspath(os.curdir)

获取系统的临时目录:


os.getenv('TEMP')

字符串与int,long,float的转化:

python的变量看起来是没有类型的,其实是有变量是有类型的。

使用locale模块下的atoi和atof来将字符串转化为int或float,或者也可以直接使用int(),float(),str()来转化。以前的版本中atoi和atof是在string模块下的。


s = "1233423423423423"

import locale

locale.atoi(s)

#1233423423423423

locale.atof(s)

#1233423423423423.0

int(s)

#1233423423423423

float(s)

#1233423423423423.0

str(123434)

"123434"

bytes和unicodestr的转化:


# bytes object  

 b = b"example"  

  

 # str object  

 s = "example"  

  

 # str to bytes  

 bytes(s, encoding = "utf8")  

  

 # bytes to str  

 str(b, encoding = "utf-8")  

  

 # an alternative method  

 # str to bytes  

 str.encode(s)  

  

 # bytes to str  

 bytes.decode(b)

写平台独立的代码必须使用的:



>>> import os

>>> os.pathsep

';'

>>> os.sep

'\\'

>>> os.linesep

'\r\n'