python标准库math中用来计算平方根的函数是,python标准库和第三方库区别

  python标准库math中用来计算平方根的函数是,python标准库和第三方库区别

  该模块现在知道如何通过导入从外部模块获取函数:

  例如,导入数学

  那么如何编写自己的模块呢?

  是一个模块程序。任何Python程序都可以作为模块导入。

  假设您在/root目录中编写hello.py,内容如下:

  # hello.py

  打印“Hello”进入python解释器:

  导入系统

  sys.path.append(/root )

  导入模块后,将出现一个新文件:

  -rw-r-r-1 root root 24 Jul 16 17:29 hello . py

  -RW-R-R-1 Root Root Root 110 jul 16 17:30 hello . pyc此文件的扩展名为。pyc已编译。如果再次导入同一个模块,Python将导入。pyc文件,而不是。py文件。

  导入模块主要用于定义,比如导入变量、函数、类等。你只需要定义这些东西一次,所以多次导入和一次导入效果一样。

  模块用于定义1。在模块中定义函数。

  #你好. py

  def hello():

  打印“Hello2”运行:

  导入hello2

  2.你好()2。在模块中添加测试代码。

  如果您想确保hello函数正常工作,您可以将hello2重写为一个新模块(仍称为hello2):

  #你好. py

  def hello():

  打印“Hello2”

  #测试

  你好()运行:

  导入hello2

  Hello2

  2.hello2.hello()这可能不是想要的结果。我们必须区分将模块作为程序运行还是导入其他程序。为此,您需要使用__name__变量:

  __姓名_ _

  __main__

  你好。__姓名_ _

   Hello2 在主程序中(包括解释器的交互提示),变量__name__是__main__而在导入的模块中,是模块的名称。因此,我这样修改hello2:

  #你好. py

  def hello():

  打印“Hello2”

  #测试

  定义测试():

  你好()

  if __name__==__main__ :

  测试()运行:

  [root @ instance-54lh 4 cfv ~]# python hello 2 . py

  Hello2

  [root @ instance-54lh 4 cfv ~]# python

  Python 2.7.5(默认,2019年4月9日14:30:50)

  linux2上的[GCC 4 . 8 . 5 2015 06 23(Red Hat 4 . 8 . 5-36)]

  有关详细信息,请键入“帮助”、“版权”、“配额”或“许可证”。

  Import2如果作为程序运行,将执行hello函数。当作为模块导入时,它不会被执行。

  使您的模块在前面的示例中可用,并通过修改sys.path告诉解释器在哪里可以找到该模块。通常您不希望每次都这样做,因此有两种方法可以做到这一点:

  将模块放在适当的位置;告诉解释器在哪里可以找到需要的模块。

  1.将模块放在正确的位置:

  导入系统,pprint

  Pprint.pprint(sys.path) #提供更智能的打印输出

  [,

  /usr/lib64/python27.zip ,

  /usr/lib64/python2.7 ,

  /usr/lib 64/python 2.7/plat-Linux 2 ,

  /usr/lib64/python2.7/lib-tk ,

  /usr/lib64/python2.7/lib-old ,

  /usr/lib 64/python 2.7/lib-dyn load ,

  /usr/lib 64/python 2.7/site-packages ,

  /usr/lib 64/python 2.7/site-packages/GTK-2.0 ,

  /usr/lib/python 2.7/site-packages ]解释器可以从这些路径中找到模块,site-packages目录是最佳选择。把hello2.py放在这个目录里就行了。

  2.告诉编译器去哪里找

  如果我们想把模块放在其他地方,我们可以采用这种方案。

  是模块通常包含在PYTHONPATH环境变量中的目录。

  3.命名模块

  包含模块代码的文件名应该与模块名相同。

  为了更好地组织模块,可以将包分组为包。包是另一种模块,它可以包含其他模块。其实就是模块的目录。

  为了让python把它当作一个包,它必须包含一个名为__init__py的文件。

  例如,有一个名为drawing的包,其中包含名为shapes和colors的模块。

  参考代码:

  导入绘图#此时绘图中__init__模块的内容可用。

  导入drawing.colors #此时颜色模块可用,但它只能由drawing.colors的全名使用。

  从绘图导入shapes#此时,shapes模块是可用的,并且你只能使用shapes来使用标准库。标准库将与Python解释器一起安装在您的计算机中。它是Python不可或缺的一部分。这些标准库就是Python为你准备的利器,可以让编程更有效。

  以下是一些常见的标准库。

  Sys可以通过这个模块访问与python解释器密切相关的变量和函数:

  函数/变量

  形容

  参数

  命令行参数,包括脚本名称

  退出([arg])

  退出当前程序。

  模块

  将模块名映射到加载该模块的字典。

  小路

  找到模块所在目录的目录名列表。

  平台

  平台标识符

  标准输入设备

  标准输入流

  标准输出

  标准输出流

  标准错误

  标准流程

  我们为徐帆实现了一个脚本来打印命令行参数:

  导入系统

  args=sys.argv[1:] #argv[0]是文件名

  args.reverse()

  打印“”。join(args)执行并添加一些参数:

  [root @ root ~]# python reverse args . py这是一个测试

  Testos提供对多种操作系统服务的访问。

  函数/变量

  形容

  包围

  映射环境变量

  系统(命令)

  在子外壳中执行操作系统命令

  九月

  路径中的分隔符

  pathsep

  用于分离路径的分离器

  linesep

  行分隔符

  铀

  返回N字节加密的强随机数据。

  这个模块允许你轻松的遍历一个文件的所有行。

  功能

  形容

  输入([文件[,就地[,备份]]

  遍历多个输入流中的行

  文件名()

  返回当前文件的名称。

  行号()

  返回当前累积的行数。

  关闭()

  关闭文件链

  通过给代码编号的脚本演示此模块的使用:

  导入文件输入

  对于文件input.input中的行(inplace=true): # true就地处理,即直接修改原文件。

  Line=line.rstrip()#删除行尾的空格

  Num=fileinput.lineno()#获取行号

  Print %-40s # %2i% (line,num) #重写格式内容#行号如果运行:python number lines . py number lines . py

  输入文件输入# 1

  对于文件input.input中的行(inplace=True): # 2

  line=line.rstrip() # 3

  num=fileinput.lineno() # 4

  打印 %-40s # %2i %(行,编号)# 5

  # 6以上脚本中的中文注释是我后来加上的。

  小心地将inplace设置为True,因为它很容易破坏文件。

  以及deque heap,这是一种优先级队列。python中没有独立的堆类型,只有一个包含一些堆操作函数的模块—— heapq,包括6个函数:

  功能

  形容

  堆,x

  x到堆中

  堆

  弹出堆中最小的元素(原来是一个小的顶堆)

  堆积

  按列表构建堆

  heapreplace(堆,x)

  弹出堆中最小的元素,同时将X放入堆中。

  nlargest(n,iter)

  返回iter中第n个最大的元素。

  n最小(n,iter)

  返回iter中第n个最小的元素

  前四个与堆操作直接相关,列表必须视为堆对象本身(堆可以用数组实现,这里可以理解为用列表实现)。

  从heapq导入*

  从随机导入洗牌

  数据=范围(10)

  随机播放(数据)

  数据

  [9, 8, 1, 0, 3, 4, 7, 6, 5, 2]

  Heapify(data) #你可以直接从列表中构建一个堆。

  数据

  [0, 2, 1, 5, 3, 4, 7, 6, 8, 9]

  Heappush(data,0.5) # heap 0.5。

  数据

  [0, 0.5, 1, 5, 2, 4, 7, 6, 8, 9, 3]

  Heappop(data) #弹出三个最小元素。

  0

  heappop(数据)

  0.5

  heappop(数据)

  1堆的性质请参考Java二进制堆。虽然是用Java语言描述的,但应该不妨碍理解。

  Deque也可以由iterable对象创建:

  从集合导入队列

  q=德克(范围(5))

  q

  德克([0,1,2,3,4])

  q .追加(5)

  q.appendleft(6)

  q

  德克([6,0,1,2,3,4,5])

  q .波普()

  五

  q.popleft()

  六

  q .旋转(3)

  q

  德克([2,3,4,0,1])

  q .旋转(-1)

  q

  Deque([3,4,0,1,2])双端意味着可以在两端添加和删除元素。

  旋转(n=1)是将它们向左或向右移动,使头部和尾部连接起来。当N为正时,意味着从左向右循环移动N位。当N为负时,表示从右向左循环移动N位。例如,deq.rotate(1)等效于deq.appendleft(deq.pop())。

  时间模块可以获取当前时间、操作时间和日期,从字符串中读取时间,并将时间格式化为字符串。

  许多Python函数使用由一个元素组装的9组数字处理时间:

  导入时间

  本地时间=时间.本地时间(时间.时间())

  打印“本地时间是:”,本地时间

  当地时间是:时间。struct _ time (TM _ year=2019,TM _ mon=7,TM _ mday=17,TM _ hour=17,TM _ min=43,TM _ sec=34,TM _ wday=2,TM _ yday=198)

  local time=time . ASC time(time . local time(time . time()))

  地方时间

   Wed Jul 17 17:44:13 2019random包含返回随机数的函数

  功能

  形容

  随机()

  返回一个介于0 n=1之间的随机实数n

  制服(甲、乙)

  返回一个随机数n,其中a=n b

  rand range([开始],停止,[步进])

  返回范围内的随机数(开始、停止、步进)

  选择(顺序)

  从序列seq中返回随机元素

  无序播放(顺序[,随机])

  打乱(打乱)原位序列seq

  原创作品来自愤怒的可乐,的博主,转载请联系作者取得转载授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: