今天看的是标准库概览。

操作系统接口:

用os模块实现。

针对文件和目录管理,还有个shutil模块可以用。

例句:

 import os
 os.getcwd() # 返回当前的工作目录
 os.chdir('/server/accesslogs') # 修改当前的工作目录
 os.system('mkdir today') # 执行系统命令 mkdir

 import shutil
 shutil.copyfile('data.db', 'archive.db')
 shutil.move('/build/executables', 'installdir')

文件通配符:

glob模块提供了一个函数用于从目录通配符搜索中生成文件列表:

import glob
glob.glob('*.py')
[a.py', b.py', c.py']

sys模块:

命令行参数、输出重定向(stdin, stdout,stderr)可以使用sys模块访问。

程序终止用sys.exit()

字符串正则匹配用re模块。字符串本身也有一些方便易用的方法。

math模块提供了对底层c函数库的访问。

random模块缇欧拱了生成随机数的工具。用起来比c方便太多了。

random.choice(['apple', 'pear', 'banana'])
random.random() # 随机生成浮点数
random.sample(range(100), 10) # 生成0-99这100个数,然后随机选10个
random.randrange(100) # 从0-99中随机选一个

访问互联网:

urllib, smtplib

例子:打印我这个博客的所有文章的标题,没错,就下面几行代码即可搞定。

 import re
 from urllib.request import urlopen

 for line in urlopen('http://www.cnblogs.com/hatemath/'):
     line = line.decode('utf-8')   # Decoding the binary data to text.
     if 'postTitle2' in line:      # 找文章标题所在的代码行
         p = re.compile('<[^>]+>') # 去除html标签
         print (p.sub("", line))   # 打印文章标题

运行结果:

2017年就要过去了,我会怀念它的

C语言老司机学Python (四)

C语言老司机学Python (三)

C语言老司机学Python (二)

C语言老司机学Python (一)

天猫精灵X1智能音箱使用感想

ThinkPad W500 清灰记录

用VB.net操作SQLite数据库

关于个人密码安全管理的分析

接触树莓派的24小时

让我们采访一下一直默默围观的c语言对此有何感想。

c语言:“那个。。。我还有嵌入式的工作要做,先走了!”

日期和时间用datetime模块进行处理。

 import datetime

 now = datetime.date.today()
 birthday = datetime.date(1975, 6, 25)
 age = now - birthday
 print(age) # 运行结果15532 days

数据压缩的模块很多,有zlib,gzip,bz2,zipfile,tarfile。多是Linux系统上的文件格式。

性能度量

细粒度用timeit模块,针对更大的代码块,可以用pstats模块。

from timeit import Timer
Timer('t=a; a=b; b=t', 'a=1; b=2').timeit()
0.57535828626024577

自动测试模块doctest:

可以使用文档中的例子对模块进行测试,并将结果和文档中给出的答案对比,如果不一致会提醒程序员测试失败。

C语言老司机学Python (五)的更多相关文章

  1. C语言老司机学Python (二)

    标准数据类型: 共6种:Number(数字),String(字符串),List(列表),Tuple(元组),Sets(集合),Dictionary(字典) 本次学习主要是和数据类型混个脸熟,知道每样东 ...

  2. C语言老司机学Python (六)- 多线程

    前面的1-5都是比较基础的东西,能做的事情也有限. 从本节起,随着更多进阶技术的掌握,渐渐就可以用Python开始浪了. Python3使用threading模块来实现线程操作. 根据在其他语言处学来 ...

  3. C语言老司机学Python (一)

    Python 版本:3.6.4 参考网上教程:http://www.runoob.com/python3/python3-basic-syntax.html 开始了啊. 干咱们这行的老规矩,学新语言的 ...

  4. C语言老司机学Python (四)

    字符串格式化: 可以使用类似c语言中sprintf函数的方法进行格式化,但是函数名称是print() 如:print('常量 PI 的值近似为:%5.3f.'  %  var_PI) 注意var_PI ...

  5. C语言老司机学Python (三)

    条件语句: 注意1) condition后面的冒号 2) elif if condition_1: statement_block_1elif condition_2: statement_block ...

  6. 老司机学新平台 - Xamarin Forms开发框架之MvvmCross插件精选

    在前两篇老司机学Xamarin系列中,简单介绍了Xamarin开发环境的搭建以及Prism和MvvmCross这两个开发框架.不同的框架,往往不仅仅使用不同的架构风格,同时社区活跃度不同,各种功能模块 ...

  7. 从零开始部署Django生产环境(适用:《跟老齐学Python Django实战》)

    <跟老齐学Python Django实战>作为市面上少有的Django通俗实战书籍,给了我学习Django很大的帮助.作为一名新入门的菜鸟,全书我重复练习了至少三遍,每次都有新的收获. 前 ...

  8. 老司机学新平台 - Xamarin开发之我的第一个MvvmCross跨平台插件:SimpleAudioPlayer

    大家好,老司机学Xamarin系列又来啦!上一篇MvvmCross插件精选文末提到,Xamarin平台下,一直没找到一个可用的跨平台AudioPlayer插件.那就自力更生,让我们就自己来写一个吧! ...

  9. 跟着老王学Python

    亲爱的朋友:     欢迎你!很高兴能在这里见到你,你能来到这里说明你真的很喜欢python,很想把python给学好!我觉的你很幸运,开始我学python的时候比较少资料,学起来也比较头疼,现在随着 ...

随机推荐

  1. ueditor表格边框没有颜色的解决

    问题: 用ueditor画表格,会发现表格存在,但是表格边框没有颜色. 解决方法: 需要对js文件中的样式进行修改,这里我引用的编辑器样式文件是ueditor.all.min.js,所以先找到该文件, ...

  2. awkOFS问题

    awk改变了OFS,$0却没变化一个文件1.txt,内容如下 a b c d e 目的把列变行,输出为: a b c d e 脚本如下: awk 'BEGIN{RS="";FS=& ...

  3. 【转载】Linux时间相关结构与函数

    1 时间的获取 在程序当中, 我们经常要输出系统当前的时间,比如日志文件中的每一个事件都要记录其产生时间.在 C 语言中获取当前时间的方法有以下几种,它们所获得的时间精度从秒级到纳秒,各有所不同. 表 ...

  4. MySQL--如何快速对比数据

    在MySQL运维中,研发同事想对比下两个不同实例上的数据并找出差异,除主键外还需要对比每一个字段,如何做呢? 第一种方案,写程序将两个实例上的每一行数据取出来进行对比,理论可行,但是对比时间较长. 第 ...

  5. #pragma once 与 #ifndef 解析

    转自:http://www.cnblogs.com/hokyhu/archive/2009/03/30/1425604.html 为了避免同一个文件被include多次,C/C++中有两种方式,一种是 ...

  6. encodeURI()和encodeURIComponent()

    encodeURI() 返回值 URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换. 说明 该方法会替换所有的字符,但不包括以下字符,即使它们具有适当的UTF-8转义序列: 保留 ...

  7. html5的video标签自动播放

    概念澄清 这里的"自动播放",是指用户的视觉效果,并不一定是元素自身的自动播放. 查看相关文档后,有以下两种最简方案. 配置属性 发现有video标签有一个自动播放的属性autop ...

  8. JetBrains Pycharm 破解+汉化

    准备材料: 1.JetBrains Pycharm    传送门:  https://pan.baidu.com/s/1qZCpIR6 密码: rvrn 2.JetbrainsCrack-2.6.2. ...

  9. 【Tools】ubuntu无法virtualenv创建python虚拟环境的解决

    刚有人问我Ubuntu python虚拟环境无法创建问题,报错same file error,防止今后遇到忘记,记录下可能的问题. 1.先在windows上试了下: pip install virtu ...

  10. js到底new了点啥

    在最开始学习js的时候,我看书上写着,创建一个数组,一个对象通常使用new,如下: var arr=new Array(),//arr=[] obj=new Object();//obj={} 到了后 ...