推荐使用LaTeX记性排版
Latex与World的比较
LaTeX是通过命令编写代码需要编译生成pdf,word形式和内容分得不清楚,而latex把形式和内容彻底分开。在排版方面,word的排版方式比较少,排版结果远不如 LaTeX的排版效果好,且 LaTeX排版方式很多。LaTeX的上手时间比较慢,需要花一段时间熟悉,特别是常用的命令和宏包。latex命令有句法,当句法错误时,哪怕错一个标点,编译是无法通过的。LaTeX的文件干净,随手记事本或者Vim或者nano都能编辑,模板质量很高,各种边距都考虑得很周到,而且切换方便,可以管理的格式很多。
下面是这次文档的LaTeX源码
\documentclass[UTF8]{ctexart}%UTF-8编码%\documentclass{article}\usepackage{graphicx}\usepackage{pythonhighlight}%引入pythonhighligth宏包\usepackage{float}\usepackage{amsmath}\usepackage{graphicx}\usepackage{subfigure}\usepackage[T1]{fontenc}\title{python中的数据结构----集合}\author{曾友}\date{\today}\bibliographystyle{plain}%生成文章标题\begin{document}\maketitle\section{集合的定义与基本运算}一:集合的定义与相关性质:\\集合是多个元素的无序组合\begin{center}集合类型与数学中的集合概念一致集合元素之间无序,每个元素唯一,不存在相同的元素.集合元素不可更改,不能是可变数据类型集合用大括号{}表示,元素间用逗号分隔建立集合类型用{}或set()建立空集合类型,必须用set()\end{center}二:集合类型的定义:\\A={"python",123,("python",123)}使用{}建立集合\\B=set("pypy123123") 使用set()建立集合三:集合操作符:\begin{tabular}{cc}\hline操作符及其应用& 描述\\\hlineS|T& 并,返回一个新集合,包括在集合S和T中的所有元素\\S-T& 差,返回一个新集合,包括在集合S但不在T中的元素\\S\^{}T& 补,返回一个新集合,包括集合S和T中非相同的元素\\S\&T& 补,返回一个新集合,包括集合S和T中非相同的元素\\\hline\end{tabular}四:集合操作符(四个增强操作符):\begin{tabular}{cc}\hline操作符及其应用&描述\\\hlineS|=T&并,更新集合S,包括在集合S和T中的所有元素\\S-=T&差,更新集合S,包括在集合S中但不在T中的元素\\S\&=T&交,更新集合S,包括同时在集合S和T中的元素\\S\^{}=T&补,更新集合S,包括集合S和T中的非相同的元素\\\hline\end{tabular} \newpage%换行符\begin{python} if __name__ == '__main__': A = {1, 2, 3, 4, 5} B = {2, 3, 4, 5, 6} a1 = A | B a2 = A & B a3 = A - B print('集合A与集合B的并集为:', a1) print('集合A与集合B的交集为:', a2) print('集合A与集合B的差集为:', a3)\end{python}五:操作函数或方法:\\\begin{tabular}{cc}\hline操作函数或方法&描述\\\hlineS.add(x)&如果x不在集合S中,将x增加到S\\S.discard(x)&移除S中的元素x,如果x不在集合S中,不报错\\S.remove(x)&移除S中的元素x,如果x不在集合S中,产生KeyError异常\\S.clear()&移除S中的所有元素\\S.pop()&随机返回S中的一个元素,更新S,若s为空产生KeyError异常\\\hline\end{tabular}\\六:集合处理方法:\\\begin{tabular}{cc}\hline操作函数或方法&描述\\\hlineS.copy()&返回集合S的一个副本\\len(s)&返回集合S的元素个数\\x in S &判断s中元素x,x在集合S中返回True,否则返回FALSE\\x not in S&判断S中元素x,x不在集合S中,返回True,否则返回FALSE\\set(x)&将其他变量x转变为集合类型\\\hline\end{tabular}\end{document}