资讯专栏INFORMATION COLUMN

python中sys,os,time模块的使用(包括时间格式的各种转换)

mochixuan / 979人阅读

摘要:模块实现从程序外部向程序传递参数。位置参数代表文件本身,运行方法参数,参数。。是正常退出,其他为异常第次第五次退出模块判断现在正在实用的平台,返回返回得到当前工作的目录。指定所有目录下所有的文件和目录名。例检验指定的对象是否存在。

sys模块 sys.argv: 实现从程序外部向程序传递参数。

位置参数argv[0]代表py文件本身,运行方法 python xx.py 参数1,参数2 。。

self = sys.argv[0]
name = sys.argv[1]
age = sys.argv[2]
print self, name, age
sys.getdefaultencoding(): 获取系统当前编码,一般默认为ascii。
print sys.getdefaultencoding()
sys.setdefaultencoding(): 设置系统默认编码,

执行dir(sys)时不会看到这个方法,在解释器中执行不通过,
可以先执行reload(sys),在执行 setdefaultencoding("utf8"),
此时将系统默认编码设置为utf8。(python2.7中可能需要这么做)

reload(sys)
sys.setdefaultencoding("utf8")
sys.path: 获取指定模块搜索路径的字符串集合
sys.path
sys.platform: 获取当前系统平台。
print sys.platform
sys.exit()

功能:执行到主程序末尾,解释器自动退出,但是如果需要中途退出程序,
可以调用sys.exit函数,带有一个可选的整数参数返回给调用它的程序,
表示你可以在主程序中捕获对sys.exit的调用。(0是正常退出,其他为异常)"""

for i in range(1, 10):
    print "第%s次:" % i, i
    if i == 5:
        print "第五次退出"
        sys.exit(0)
os模块 1. os.name()——判断现在正在实用的平台,Windows 返回 ‘nt"; Linux 返回’posix"
print os.name()
2. os.getcwd()——得到当前工作的目录。
print os.getcwd()
3. os.listdir()——指定所有目录下所有的文件和目录名。
print os.listdir(".")
4. os.remove()——删除指定文件
os.remove("aaa.txt")
5. os.rmdir()——删除指定目录
os.rmdir("C://Users/xiaoxinsoso/Desktop/aaa")
6. os.mkdir()——创建目录,注意:这样只能建立一层,要想递归建立可用:os.makedirs()
os.makedirs("aaa/aaa")
7. os.path.isfile()——判断指定对象是否为文件。是返回True, 否则False
print os.path.isfile("ccc.txt")
print os.path.isfile("aaa")
8. os.path.isdir()——判断指定对象是否为目录。是True, 否则False。例:
print os.path.isdir("aaa")
print os.path.isdir("ccc.txt")
9. os.path.exists()——检验指定的对象是否存在。是True, 否则False.例:
print os.path.exists("bbb")
print os.path.exists("aaa")
print os.path.exists("ccc.txt")
10. os.path.split()——返回路径的目录和文件名。例:
print os.path.split("C://Users/xiaoxinsoso/Desktop/aaa/ccc.txt")
11. os.getcwd()——获得当前工作的目录
print os.getcwd()
12. os.system()——执行shell命令。

注意:此处运行shell命令时,如果要调用python之前的变量,可以用如下方式:

var = 123
os.environ["var"] = str(var) # 注意此处[]内得是 “字符串”
os.system("echo $var")

os.system("dir")
13. os.chdir()——改变目录到指定目录 14. os.path.getsize()——获得文件的大小,如果为目录,返回0
print os.path.getsize("ccc.txt")
15. os.path.abspath()——获得绝对路径。例:
print os.path.abspath(".")
16. os.path.join(path, name)——连接目录和文件名。例:
print os.path.join("c://user/xiaoxinsoso/", "wenjian.txt")
17. os.path.basename(path)——返回文件名
print os.path.basename("ccc.txt")
18. os.path.dirname(path)——返回文件路径
print os.path.dirname("C://Users/xiaoxinsoso/Desktop/aaa/ccc.txt")
19. 获得程序所在的实际目录
if __name__ == "__main__":
    print os.path.realpath(sys.argv[0])
    print os.path.split(os.path.realpath(sys.argv[0]))
    print os.path.split(os.path.realpath(sys.argv[0]))[0]
time模块
ticks = time.time()
print "当前时间戳为:", ticks
获取当前时间
localtime = time.localtime(time.time())
print "本地时间为 :", localtime
获取格式化的时间
localtime = time.asctime(time.localtime(time.time()))
print "本地时间为 :", localtime
格式化日期 格式化成2017-01-22 16:36:27形式
print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
格式化成Sun Jan 22 16:36:27 2017形式
print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
将格式字符串转换为时间戳
a = "Sat Mar 28 22:24:24 2016"
print time.mktime(time.strptime(a, "%a %b %d %H:%M:%S %Y"))
获取某月日历
cal = calendar.month(2017, 1)
print "以下输出2016年1月份的日历:"
print cal
datetime模块 datetime类型时间
now = datetime.datetime.now()
print now
now = date time.datetime.now()
yes_time = now + date time.timedelta(days=-1)    # 前一天的时间
datetime转string
strdatetime = now.strftime("%Y-%m-%d %H:%M:%S")     # 以字符串形式显示时间,显示全部
strdatetime1= now.strftime("%Y-%m-%d")     # 以字符串形式显示时间,只显示日期
print strdatetime
print strdatetime1
string转datetime
datetime1 = datetime.datetime.strptime(strdatetime1, "%Y-%m-%d")
print datetime1
datetime转时间戳
time_time = time.mktime(datetime1.timetuple())
print time_time
时间戳转string
time1 = time.strftime("%Y-%m-%d",time.localtime(time_time))
print time1
date转datetime
date1 = datetime.date(2012, 11, 19)
date = datetime.date.today()
print date
print datetime.datetime.strptime(str(date),"%Y-%m-%d") #将date转换为str,在由str转换为datetime
print datetime.datetime.strptime(str(date1),"%Y-%m-%d") #将date转换为str,在由str转换为datetime

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/41629.html

相关文章

  • Python基础之(十)模块

    摘要:是回调函数,当链接服务器和相应数据传输完毕时触发本函数可选。仅仅是针对的,在中,已经没有这个模块了,取代它的是。由于以流式读取文件,从而速度较快,切少占用内存,但是操作上稍复杂,需要用户实现回调函数。 编写模块 模块是程序 模块就是一个扩展名为.py的Python程序。 编写模块 #!/usr/bin/env python # coding=utf-8 lang = python 引...

    jlanglang 评论0 收藏0
  • Node.js学习之路19——punycode模块os模块

    摘要:模块转换为编码模块内部使用类库以将域名从地方语言所采用的各种编码转换为可用于服务器的编码因为操作系统的核心都是英文服务器的解析也是由英文代码交换所以服务器并不支持直接的使用地方语言的域名解析所有地方语言域名的解析都需要转成编码然后由服务器解 1. punycode punycode模块转换为punycode编码 punycode模块内部使用punycode.js类库,以将域名从地方...

    xumenger 评论0 收藏0
  • python大佬养成计划----os,datetime,time模块补充

    摘要:是否则检验指定的对象是否存在。由于的模块实现主要调用库,所以各个平台可能有所不同。时间格式时间戳的方式通常来说,时间戳是指格林威治时间年月日时分秒北京时间年月日时分秒起至现在的总秒数。元组方式元组共有个元素,返回的函数主要有,,。 os模块 os模块提供了多数操作系统的功能接口函数。当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在python编程时,...

    frank_fun 评论0 收藏0
  • python模块sys

    摘要:返回的信息特定于当前线程以及当前堆栈帧。出于某些原因,这个值可能无法计算,将返回返回安卓版本的构建时间,以整数表示。仅适用于安卓平台返回解释器的检查间隔。可操作此属性实现强制重新加载模块等。 sys模块提供对由解释器使用或维护的某些变量、与解释器交互的函数的访问接口。 sys.abiflags 在使用标准configure脚本构建python的POSIX系统上,该属性包含了PEP 31...

    csRyan 评论0 收藏0
  • python--模块2

    摘要:可能没有用户输出的消息创建一个,用于写入日志文件再创建一个,用于输出到控制台对象可以添加多个和对象序列化模块什么叫序列化将原本的字典列表等内容转换成一个字符串的过程就叫做序列化。 hashlib模块 1.Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。什么是摘要算法呢?摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(...

    13651657101 评论0 收藏0

发表评论

0条评论

mochixuan

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<