收集的几个Python小技巧分享

yipeiwu_com6年前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'

相关文章

Python绘制并保存指定大小图像的方法

绘制直线,三角形,正方形 import matplotlib.pyplot as plt def plotLine(): x = [1,2,3,4,5] y = [3,3,3,3...

python利用openpyxl拆分多个工作表的工作簿的方法

python利用openpyxl拆分多个工作表的工作簿的方法

实现按目录拆分工作簿,源数据如下图 按目录拆分成N个文件。 上代码,没有找是否有整个sheet 复制的,先逐个cell复制解决问题。: # encoding: utf-8 """...

Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法

一. lamda匿名函数   为了解决一些简单的需求而设计的一句话函数 # 计算n的n次方 def func(n): return n**n print(func(10)) f...

Python 中@property的用法详解

在绑定属性时,如果我们直接把属性赋值给对象,比如: p = Person() p.name= 'Mary' 我们先看个详细的例子(注意双下划线name和age定义为私有变量):...

python之array赋值技巧分享

首先上一段程序: import numpy as np list_a = list(range(10)) print("list_a: {}".format(list_a)) a...