Python 有两种错误:语法错误和异常。

Python assert(断言)用于判断一个表达式,在表达式条件为 false 的时候触发异常。

assets-py.webp

阅读全文 »

常用函数

os.getcwd()

查看当前路径。

1
2
import os
print(os.getcwd())

os.listdir(path)

返回指定目录下包含的文件和目录名列表。

1
2
import os
print(os.listdir('D:/'))
阅读全文 »

Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出 OSError。

注意:使用 open() 方法一定要保证关闭文件对象,即调用 close() 方法。

open() 函数常用形式是接收两个参数:文件名(file)和模式(mode)。

1
open(file, mode='r')

完整的语法格式为:

1
2
open(file, mode='r', buffering=-1, encoding=None, errors=None
, newline=None, closefd=True, opener=None)
阅读全文 »

旧式字符串格式化

因为 str.format() 是比较新的函数, 大多数的 Python 代码仍然使用 % 操作符。但是因为这种旧式的格式化最终会从该语言中移除, 应该更多的使用 str.format().

Python 使用 % 格式化字符串,常用占位符如下表所示:

占位符 描述
%s 格式化字符串
%d 格式化整数
%f 格式化浮点数(默认保留6位小数)
阅读全文 »

输出

Python输出值的方式:

  • 表达式语句;
  • print() 函数;
  • 使用文件对象的 write() 方法,标准输出文件可以引用 sys.stdout

如果你希望输出的形式更加多样,可以使用 str.format() 函数来格式化输出值。

将输出的值转成字符串,可以使用 repr()str() 函数来实现。

str(): 函数返回一个用户易读的表达形式。
repr(): 产生一个解释器易读的表达形式。

阅读全文 »

介绍

模块

模块是一个包含所有你定义的函数和变量的文件,其后缀名是 .py。模块可以被别的程序引入,以使用该模块中的函数等功能。Python 有很多自带的模块(标准库)和第三方模块,一个模块可以被其他模块引用,实现了代码的复用性。

包是存放模块的文件夹,包中包含 __init__.py 和其他模块,__init__.py 可为空也可定义属性和方法,在 Python3.3 之前的版本,一个文件夹中只有包含 __init__.py,其他程序才能从该文件夹引入相应的模块、函数等,之后的版本没有 __init__.py 也能正常导入,简单来说就是 Python3.3 之前的版本,__init__.py 是包的标识,是必须要有的,之后的版本可以没有。

阅读全文 »

列表

Python中列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能。

Python 中列表的方法:注意:类似 insert, remove 或 sort 等修改列表的方法没有返回值。

  • list.append(x):把一个元素添加到列表的结尾,相当于 a[len(a):] = [x]。
  • list.extend(L):通过添加指定列表的所有元素来扩充列表,相当于 a[len(a):] = L。
  • list.insert(i, x):在指定位置插入一个元素。第一个参数是准备插入到其前面的那个元素的索引,例如 a.insert(0, x) 会插入到整个列表之前,而 a.insert(len(a), x) 相当于 a.append(x) 。
  • list.remove(x):删除列表中值为 x 的第一个元素。如果没有这样的元素,就会返回一个错误。
  • list.pop([i]):从列表的指定位置移除元素,并将其返回。如果没有指定索引,a.pop()返回最后一个元素。元素随即从列表中被移除。(方法中 i 两边的方括号表示这个参数是可选的,而不是要求你输入一对方括号,你会经常在 Python 库参考手册中遇到这样的标记。)
  • list.clear():移除列表中的所有项,等于del a[:]。
  • list.index(x):返回列表中第一个值为 x 的元素的索引。如果没有匹配的元素就会返回一个错误。
  • list.count(x):返回 x 在列表中出现的次数。
  • list.sort():对列表中的元素进行排序。
  • list.reverse():倒排列表中的元素。
  • list.copy():返回列表的浅复制,等于a[:]。
    阅读全文 »

迭代器

迭代器是一个可以记住遍历的位置的对象。

迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。

迭代器有两个基本的方法:iter()next()

字符串,列表或元组对象都可用于创建迭代器:

阅读全文 »

简介

history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。

该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号 ! 执行指定序号的历史命令。例如,要执行第2个历史命令,则输入 !2

历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储 1000 条历史命令,该数量是由环境变量 HISTSIZE 进行控制。

阅读全文 »

转载:80% 的人都不会的 15 个 Linux 实用技巧

1. 快速清空文件的方法

1
2
3
4
5
6
7
8
9
$ > access.log

# 几种最常见的清空文件的方法
: > access.log
true > access.log
cat /dev/null > access.log
echo -n "" > access.log
echo > access.log
truncate -s 0 access.log

: 在 shell 中是一个内置命令,表示 no-op,大概就是空语句的意思,所以 : 的那个用法,就是执行命令后,什么都没有输出,将空内容覆盖到文件。

阅读全文 »

Linux bzip2命令是 .bz2 文件的压缩程序。bzip2 是用来压缩文件的,而 bunzip2 则是用来解压文件的,类似于 zip 和 unzip 的关系。

bzip2采用新的压缩演算法,压缩效果比传统的LZ77/LZ78压缩演算法来得好。若没有加上任何参数,bzip2压缩完文件后会产生.bz2的压缩文件,并删除原始的文件。

阅读全文 »

Linux du(英文全拼:disk usage)命令用于显示目录或文件的大小。du 侧重在文件夹和文件的磁盘占用方面,而 df 则侧重在文件系统级别的磁盘占用方面。

du 会显示指定的目录或文件所占用的磁盘空间。

du 展示的是磁盘空间占用量。ls 展示的是文件内容的大小。

语法

1
2
du [-abcDhHklmsSx][-L <符号连接>][-X <文件>][--block-size]
[--exclude=<目录或文件>][--max-depth=<目录层数>][--help][--version][目录或文件]
阅读全文 »

简介

dd,是 device driver 的缩写,它可以称得上是 “Linux 世界中的搬运工”,它用来读取设备、文件中的内容,并原封不动地复制到指定位置。

使用dd对磁盘操作时,最好使用块设备文件。

阅读全文 »

ifconfig 工具不仅可以被用来简单地获取网络接口配置信息,还可以修改这些配置。注意:用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。

阅读全文 »

介绍

  The Constrained Application Protocol(CoAP,受限制的应用协议)是一种专用的Web传输协议,用于受约束的节点和受约束的(例如,低功率,有损)网络。

  CoAP是一种应用层协议,它运行于 UDP协议之上。该协议旨在用于机器对机器(M2M)应用,例如智能能源和楼宇自动化。

阅读全文 »