def package_example(): # 访问的是 当前包下的模块p p.prt(10000, '测试点模块名称') ''' 输出 --------- 10000、测试点模块名称 ''' # 访问子模块:package1.p。 他必须使用全名去访问 package1.p.prt(20000, '测试点模块名称') '''
import p p.prt(1, '元组') ''' Python 的元组与列表类似,不同之处在于元组的元素不能修改。 元组使用小括号 ( ),列表使用方括号 [ ]。 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可 ''' def c_tuple(): tup1 = ('Google', 'Runoob', 1997, 2000) print(tup1) tup2 = (1, 2, 3, 4, 5) print(tup2) tup3 = "a", "b", "c", "d" # 不需要括号也可以 print(tup3) type(tup3) # 创建空元组 tup_null = () print(tup_null) # () # 元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用: tup1 = 50 print(type(tup1)) # 不加逗号,类型为整型 <class 'int'> tup2 = 50, print(type(tup2)) # 加上逗号,类型为元组 <class 'tuple'> tup3 = (50, ) print(type(tup3)) # 加上逗号,类型为元组 <class 'tuple'>
import p import sys p.prt(1, '迭代器是Python最强大的功能之一,是访问集合元素的一种方式') ''' 迭代器 迭代是Python最强大的功能之一,是访问集合元素的一种方式。 迭代器是一个可以记住遍历的位置的对象。 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。 迭代器有两个基本的方法:iter() 和 next()。 字符串,列表或元组对象都可用于创建迭代器 迭代器对象可以使用常规for语句进行遍历 可以使用 next() 函数 ''' # 实例 def iter_instance(): list = [1, 2, 3, 4, 5, 6] it = iter(list) print(it) print(next(it), end=",") # 1 print(next(it)) # 2 '''迭代器对象可以使用常规for语句进行遍历:''' for x in it: print(x, end=",") # 3,4,5,6, '''可以使用 next() 函数''' while True:
import p p.prt(1, '模块') ''' 模块 用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了. 为此 Python 提供了一个办法,把这些定义存放在文件中,为一些脚本或者交互式的解释器实例使用,这个文件被称为模块 比如:p.py 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。 ''' # 1、import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。 import sys def print_sys_argv(): # 命令行参数如下: # 2、sys.argv 是一个包含命令行参数的列表。 for x in sys.argv: print(x) # 3、sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表。 print('\nPython 路径为:', sys.path, '\n') # print_sys_argv() p.prt(2, 'import 语句') ''' 想使用 Python 源文件,只需在另一个源文件里执行 import 语句,语法如下 import module1[, module2[,... moduleN]
import p p.prt(1, '创建字符串很简单,只要为变量分配一个值即可') ''' 字符串是 Python 中最常用的数据类型。我们可以使用引号( ' 或 " )来创建字符串。 创建字符串很简单,只要为变量分配一个值即可 ''' def c_str(): var1 = 'Hello World!' var2 = "Runoob" print(var1, var2) # c_str() p.prt(2, '访问字符串中的值') ''' Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。 Python 访问子字符串,可以使用方括号 [] 来截取字符串,字符串的截取的语法格式如下: 变量[头下标:尾下标] 索引值以 0 为开始值,-1 为从末尾的开始位置。 从后面索引 -4 -3 -2 -1 从前面索引 0 1 2 3 h a o d 从前面截取 1 2 3 4 从后面截取 -4 -3 -2 -1 注意:
import p p.prt(0, '条件控制') ''' Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。 ''' p.prt(1, 'if语句') ''' Python中if语句的一般形式如下所示: if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3 如果 "condition_1" 为 True 将执行 "statement_block_1" 块语句 如果 "condition_1" 为False,将判断 "condition_2" 如果"condition_2" 为 True 将执行 "statement_block_2" 块语句 如果 "condition_2" 为False,将执行"statement_block_3"块语句 Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。 注意: 1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。 2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。 3、在Python中没有switch – case语句。 '''
import p p.prt(1, ' 集合') ''' 集合(set)是一个无序的不重复元素序列。 可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。 创建格式: parame = {value01,value02,...} 或者 set(value ''' R def c_set(): basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'} # 去重功能 print(basket) # 快速判断元素是否在集合内 if 'orange' in basket: print(True) else: print(False) # c_set() def set_operation(): a = set('abracadabra')
import p import package1.p p.prt(1, '包1') ''' 包 包是一种管理 Python 模块命名空间的形式,采用"点模块名称"。 比如一个模块的名称是 A.B, 那么他表示一个包 A中的子模块 B 。 就好像使用模块的时候,你不用担心不同模块之间的全局变量相互影响一样,采用点模块名称这种形式也不用担心不同库之间的模块重名的情况。 这样不同的作者都可以提供 NumPy 模块,或者是 Python 图形库。 在导入一个包的时候,Python 会根据 sys.path 中的目录来寻找这个包中包含的子目录。 目录只有包含一个叫做 __init__.py 的文件才会被认作是一个包,主要是为了避免一些滥俗的名字(比如叫做 string)不小心的影响搜索路径中的有效模块。 最简单的情况,放一个空的 :file:__init__.py就可以了。当然这个文件中也可以包含一些初始化代码 这里给出了一种可能的包结构(在分层的文件系统中) sound/ 顶层包 __init__.py 初始化 sound 包 formats/ 文件格式转换子包 __init__.py wavread.py wavwrite.py aiffread.py aiffwrite.py auread.py auwrite.py ... effects/ 声音效果子包 __init__.py echo.py
import p p.prt(1, '数据结构') ''' 数据结构 结合前面所学的知识点来介绍Python数据结构 ''' p.prt(2, '列表') ''' 列表是可变的,这是它区别于字符串和元组的最重要的特点,一句话概括即:列表可以修改,而字符串和元组不能 ''' p.prt(3, '下是 Python 中列表的方法') ''' 方法 描述 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[:]。 '''
import p p.prt(1, '循环语句') ''' Python 中的循环语句有 for 和 while。 ''' p.prt(2, 'for 语句') ''' for 语句 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。 for循环的一般格式如下: for <variable> in <sequence>: <statements> else: <statements> ''' def for_instance(): languages = ["C", "C++", "Perl", "Python"] for x in languages: print(f'{x}', end=",") # for_instance() p.prt(3, 'while 循环语句') ''' Python 中 while 语句的一般形式: while 判断条件(condition):
import p p.prt(1, '斐波纳契数列') ''' Fibonacci series: 斐波纳契数列 两个元素的总和确定了下一个数 ''' def fibonacci_series(): # 复合赋值 a, b = 0, 1 while b < 100: # end 关键字:可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符 print(b, end=",") # 复合赋值 a, b = b, a + b fibonacci_series()
print('---------') print('5,随机数函数') ''' 随机数函数 随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。 Python包含以下常用随机数函数: choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。 randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1 random() 随机生成下一个实数,它在[0,1)范围内。 seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。 shuffle(lst) 将序列的所有元素随机排序 uniform(x, y) 随机生成下一个实数,它在[x,y]范围内。 ''' p.prt(6, '三角函数') ''' Python包括以下三角函数: acos(x) 返回x的反余弦弧度值。 asin(x) 返回x的反正弦弧度值。 atan(x) 返回x的反正切弧度值。 atan2(y, x) 返回给定的 X 及 Y 坐标值的反正切值。 cos(x) 返回x的弧度的余弦值。 hypot(x, y) 返回欧几里德范数 sqrt(x*x + y*y)。 sin(x) 返回的x弧度的正弦值。 tan(x) 返回x弧度的正切值。 degrees(x) 将弧度转换为角度,如degrees(math.pi/2) , 返回90.0 radians(x) 将角度转换为弧度 ''' p.prt(7, '数学常量')
import p p.prt(1, '列表') ''' 序列是 Python 中最基本的数据结构。 序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推。 Python 有 6 个序列的内置类型,但最常见的是列表和元组。 ''' # 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可 def c_list(): list1 = ['Google', 'Runoob', 1997, 2000] list2 = [1, 2, 3, 4, 5] list3 = ["a", "b", "c", "d"] list4 = ['red', 'green', 'blue', 'yellow', 'white', 'black'] print(list1, list2, list3, list4) # c_list() p.prt(2, '访问列表中的值') ''' 与字符串的索引一样,列表索引从 0 开始,第二个索引是 1,依此类推。 通过索引列表可以进行截取、组合等操作 索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推 使用下标索引来访问列表中的值,同样你也可以使用方括号 [] 的形式截取字符 ''' def visit_list():