设为首页 加入收藏

TOP

04python基础知识02
2023-07-25 21:24:23 】 浏览:23
Tags:04python

这一篇文章主要介绍函数、模块、运行python文件等知识。

函数

函数犹如小程序,可以用来执行特定的操作。Python本身提供了很多函数,我们称这些函数为内置函数。内置函数可以用于编写数值表达式

>>> abs(-10)
10
>>> 2 // 3 # 整除总是向下取整
0
>>> round(2 / 3) # round()
  • 使用函数的过程称为调用函数,调用函数的时候需要提供实参,调用的结果就是返回一个值,称为函数的返回值

模块

可认为模块是一种扩展,通过将其导入壮大Python功能。

导入模块的关键字为import

>>> import math
>>> math.floor(32.9) # 向下取整函数(floor的本意为地板,所以是向下取整)
32
>>> math.ceil(32.9)  # 向上取整函数(ceil的本意为天花板,所以是向上取整)
33
>>>
  • 首先使用 import导入模块,再使用 moudle.function的方式使用模块中的函数
  • floor()函数的功能是向下取整,再计算年龄的类似场景很有用
  • 一些类似的函数入str()、float()实际上是类的概念

如果只需要导入模块中的某个函数,使用from module import function格式,这种再使用的时候就不需要加上前缀了:

>>> from math import sqrt
>>> sqrt(9)
3.0
>>> foo = math.sqrt # 可以使用变量来引用函数
>>> foo(64)
8.0
>>>

复数

用函数sqrt计算负数的平方根会报错:

>>> from math import sqrt
>>> sqrt(-1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: math domain error
>>>  
  • 这是因为负数的平方根为虚数,而函数sqrt限定值域为实数,并使用其近似的浮点数表示,所以无法计算负数的平方跟

实部虚部组成的数为复数,Python标准库提供了一个专用用于处理复数的模块:cmath

>>> import cmath # 注意这里不能使用 from ... import ... 的格式,否则将无法使用常规函数sqrt()
>>> cmath.sqrt(-1)
1j
>>>
>>> (1 + 3J) * (9 + 4j)
(-3+31j) # 从结果可以看出,python提供了对复数的支持
>>>
>>> type(1j)
<class 'complex'> # Python没有专门的表示虚数的数据类型,而是将虚数视为实部为0的复数
>>> type(10 + 6j) 
<class 'complex'>
  • 1j是个虚数,虚数都是以 jJ结尾。
  • 复数算术运算都基于如下定义:-1的平方根为 1j
  • Python没有专门的表示虚数的数据类型,而是将虚数视为实部为0的复数。

关于python文件的运行

交互式解释器的好处就是可以让你实时运行写完的代码,可以帮助学习者了解python的工作原理;但是它也有一个致命的缺点就是退出交互式解释器之后,编写的所有代码都会丢失。显然我们不可能每次工作都从头开始,因为我们的终极目标是编写自己和他人都能运行的程序。

那么我们就需要一个文本编辑器可以编写代码,然后保存成文件复用:

  • 打开IDlE,编写代码
  • 保存文件,文件拓展名务必为.py

命令提示符运行脚本:

  • 打开DOS窗口
  • 切换到Python可执行文件
  • 运行脚本文件

IDE运行脚本:

  • 找到文件并打开,运行文件:Run->Run Moudle
  • 查看运行的结果是否与预期一致

需要说明的是,如果要像运行其他程序一样执行Python脚本,需要再python文件的第一行加上 #!/usr/bin/env python, 这样可以保证脚本文件可以再安装了python的环境中运行。

有时候,还需要修改脚本的权限才可以运行:$ chmod a+x demo.py

注释

在Python中,井号(#)比较特殊:在代码中,井号后面到行尾的内容都将被忽略,称为注释。

注释让程序更容易理解,注释的基本原则就是言而有物,不要重复去讲通过代码很容易获得的信息,无用而重复的注释还不如没有。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Windows系统安装Python 下一篇【Python爬虫案例】用python爬100..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目