# Using the len() function to get the length of a string
len("Python")
6
在本课中,你将学习Python中的函数、方法和库,基于我们在前一课中涵盖的基础知识。
首先,打开你喜欢的Python环境(例如,Jupyter Notebook、VS Code或PyCharm),并创建一个新的Python文件或笔记本。
接下来,根据你的环境,将文件保存为类似 “functions_and_libraries.py” 或 “functions_and_libraries.ipynb” 的名称。
现在,你应该将本课的所有代码输入到该文件中。
函数是执行特定任务的一段代码。它可以接收输入(参数)并返回输出。以下是一个只使用一个参数的内置函数的例子:
# Using the len() function to get the length of a string
len("Python")
6
round()
函数接受两个参数:要四舍五入的数字和要四舍五入的小数位数。
# Using the round() function to round a number
round(3.1415, 2)
3.14
使用abs()
函数获取-5的绝对值。
在下方编写你的代码并运行以检查答案:
# Your code here
参数(也称为形参)是在调用函数(或方法)时传递给它的值。
传递参数给函数有不同的方法。
再次考虑round()
函数。
如果我们查看round()
函数的文档,使用:
round?
我们看到它接受两个参数:
number
:要四舍五入的数字。ndigits
:要四舍五入的小数位数。传递参数给这个函数有两种主要的方法。
number
然后ndigits
,我们可以按照这个顺序传递参数,而无需指定参数名,就像上面所做的那样。round(3.1415, 2)
3.14
如果我们交换参数的顺序,就会出现错误:
round(2, 3.1415)
=
和参数值来传递。round(number=3.1415, ndigits=2)
3.14
使用这种方法,我们可以按任何顺序传递参数,只要使用参数名。
round(ndigits=2, number=3.1415)
3.14
通常建议指定关键字,除非函数简单且参数很少,或者从上下文中参数的顺序很明显。
pow()
使用pow()
函数通过传递位置参数来计算2的7次方。你可能需要查阅pow()
函数的文档来了解它的工作方式。
在下方编写你的代码并运行以检查答案:
# Your code here
round()
使用round()
函数通过指定关键字参数将数字9.87652
四舍五入到3
位小数。
在下方编写你的代码并运行以检查答案:
# Your code here
方法类似于函数,但它们与特定的对象或数据类型相关联。它们通过点符号调用。
例如,每个字符串对象都有一系列内置方法,如upper()
用于转换为大写,lower()
用于转换为小写,replace()
用于替换子字符串等等。
让我们看看如何使用这些方法:
= "python"
name print(name.upper())
print(name.lower())
print(name.replace("p", "🐍"))
PYTHON
python
🐍ython
我们还可以直接在字符串对象上调用这些方法,而不将其赋值给变量:
# Using the upper() method on a string
print("python".upper())
print("PYTHON".lower())
print("python".replace("p", "🐍"))
PYTHON
python
🐍ython
同样,Python中的数字也有一些内置方法。例如,as_integer_ratio()
(在Python 3.8中添加)方法将一个小数转换为两个整数的比率。
# Using the as_integer_ratio() method on a float
= 1.5
example_decimal example_decimal.as_integer_ratio()
(3, 2)
想出以下术语的简明定义,使对你而言清晰(即使在技术上不是完全准确的):
replace()
方法,将单个 l 替换为双 l。split()
方法,将字符串拆分为单词列表。# Your code here
库是你可以在程序中使用的预编写代码的集合。它们通过提供额外的函数和工具扩展了Python的功能。
例如,math
库提供数学函数,如用于平方根的sqrt()
和用于正弦的sin()
。
如果我们在未导入math
库的情况下尝试使用sqrt()
函数,就会出现错误:
# This will cause a NameError
16) sqrt(
我们可以导入math
库并像这样使用sqrt()
函数:
# Import the library
import math
然后我们可以像这样使用sqrt()
函数:
# Use the sqrt() function
16) math.sqrt(
4.0
我们可以以类似的方式获取函数的帮助,调用函数和它所在的库:
# Get help on the sqrt() function
math.sqrt?
我们还可以为库取别名进行导入。例如,我们可以将math
库导入并取别名为m
:
# Import the entire library with an alias
import math as m
# Then we can use the alias to call the function
16) m.sqrt(
4.0
最后,如果你想省略别名/库名,你可以单独导入函数:
# Import specific functions from a library
from math import sqrt, sin
# Then we can use the function directly
16)
sqrt(0) sin(
0.0
或者导入库中的所有内容:
# Import everything from the library
from math import *
# Then we can all functions directly, such as sqrt() and sin()
16)
sqrt(0)
cos(0)
tan(0) sin(
0.0
真是有很多导入库的方法!你大部分时间会看到import ... as ...
语法,有时也会看到from ... import ...
语法。
注意,通常我们会在文件的顶部,在一个代码块中导入所有需要的库。这是一种良好的实践。
想出以下术语的简明定义,使对你来说清晰(即使在技术上并不完全准确的):
random
库并使用randint()
函数生成1到10之间的随机整数。导入后,你可以使用?
运算符获取关于该函数的帮助。# Your code here
虽然Python自带了许多内置库,但还有成千上万的额外库可用,你可以安装它们以进一步扩展Python的功能。让我们以cowsay
库为例,看看如何安装和使用一个简单的外部库。
如果我们在未先安装此库的情况下尝试导入它,就会出现错误:
import cowsay
要安装该库,你可以在Google Colab的代码单元中使用!pip install
命令。对于cowsay
,你需要运行:
!pip install cowsay
Pip从称为PyPI的远程仓库安装软件包。任何人都可以创建并上传软件包到PyPI。经过一些检查后,它就可供任何人安装了。
对于在本地Python环境中工作的用户,你可以在终端中使用pip安装cowsay
:
pip install cowsay
安装后,我们现在可以导入并使用cowsay
库:
import cowsay
# Make the cow say something
'Moo!') cowsay.cow(
____
| Moo! |
====
\
\
^__^
(oo)\_______
(__)\ )\/\
||----w |
|| ||
这将显示一只说”Moo!“的ASCII艺术牛。
emoji
库。emoji
库。emoji
库中emojize()
函数的帮助。emojize()
函数显示“点赞”表情。# Your code here
在本课中,我们涵盖了:
这些概念是Python编程的基础,并将在你继续提升技能的过程中广泛使用。练习使用不同的函数、方法和库,以更熟练掌握这些概念。