当前位置: 首页 > news >正文

[Python 基础课程]常用函数

在 Python 编程中,函数是组织代码、实现复用和提高可读性的核心工具。除了我们自己定义的函数,Python 内置了许多功能强大的常用函数。这些函数无处不在,理解并熟练运用它们能让你编写更简洁、更高效的代码。本章将介绍一些 Python 3 中最常用的内置函数。

类型转换函数

类型转换是编程中常见且重要的操作,这些函数能帮助你在不同数据类型之间进行转换。

int():转换为整数
int() 函数可以将数字或符合整数格式的字符串转换为整数。

num_str = "123"
float_num = 45.67int_from_str = int(num_str)
# 会截断小数部分
int_from_float = int(float_num)# 输出: 123
print(f"字符串 '123' 转换为整数: {int_from_str}")
# 输出: 45
print(f"浮点数 45.67 转换为整数: {int_from_float}")

float():转换为浮点数
float() 函数将数字或符合浮点数格式的字符串转换为浮点数。

int_num = 100
num_str = "98.76"float_from_int = float(int_num)
float_from_str = float(num_str)# 输出: 100.0
print(f"整数 100 转换为浮点数: {float_from_int}")
# 输出: 98.76
print(f"字符串 '98.76' 转换为浮点数: {float_from_str}")

str():转换为字符串
str() 函数将任何数据类型转换为其字符串表示形式。

number = 123
list_data = [1, 2, 3]str_from_num = str(number)
str_from_list = str(list_data)# 输出: '123'
print(f"整数 123 转换为字符串: '{str_from_num}'")
# 输出: '[1, 2, 3]'
print(f"列表 [1, 2, 3] 转换为字符串: '{str_from_list}'")

list():转换为列表
list() 函数可以将可迭代对象(如字符串、元组、集合、字典的键等)转换为列表。

my_string = "hello"
my_tuple = (1, 2, 3)list_from_str = list(my_string)
list_from_tuple = list(my_tuple)# 输出: ['h', 'e', 'l', 'l', 'o']
print(f"字符串 'hello' 转换为列表: {list_from_str}")
# 输出: [1, 2, 3]
print(f"元组 (1, 2, 3) 转换为列表: {list_from_tuple}")

tuple():转换为元组
tuple() 函数与 list() 类似,可以将可迭代对象转换为元组。

my_list = [1, 2, 3]
my_string = "world"tuple_from_list = tuple(my_list)
tuple_from_str = tuple(my_string)# 输出: (1, 2, 3)
print(f"列表 [1, 2, 3] 转换为元组: {tuple_from_list}")
# 输出: ('w', 'o', 'r', 'l', 'd')
print(f"字符串 'world' 转换为元组: {tuple_from_str}")

set():转换为集合
set() 函数可以将可迭代对象转换为集合,集合的一个重要特性是元素唯一且无序

my_list_duplicates = [1, 2, 2, 3, 4, 4, 5]
my_string = "banana"set_from_list = set(my_list_duplicates)
set_from_str = set(my_string)# 输出: {1, 2, 3, 4, 5}
print(f"列表 [1, 2, 2, 3, 4, 4, 5] 转换为集合: {set_from_list}")
# 输出: {'b', 'a', 'n'} (顺序可能不同)
print(f"字符串 'banana' 转换为集合: {set_from_str}")

数学运算函数

这些函数能帮助你进行常见的数学计算。

len():获取长度
len() 函数返回一个对象的长度或项目数,常用于字符串、列表、元组、字典、集合等。

my_string = "Python"
my_list = [10, 20, 30, 40]
my_dict = {"a": 1, "b": 2}# 输出: 6
print(f"字符串 'Python' 的长度: {len(my_string)}")
# 输出: 4
print(f"列表 [10, 20, 30, 40] 的长度: {len(my_list)}")
# 输出: 2 (键值对的数量)
print(f"字典 {{'a': 1, 'b': 2}} 的长度: {len(my_dict)}")

sum():求和
sum() 函数对可迭代对象(如列表、元组)中的所有数字求和。

numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
# 输出: 15
print(f"列表 {numbers} 的和: {total}")# 也可以指定一个起始值
total_with_start = sum(numbers, 10)
# 输出: 25
print(f"列表 {numbers} 从 10 开始的和: {total_with_start}")

max():求最大值
max() 函数返回可迭代对象中的最大项,或者多个参数中的最大值。

numbers = [10, 5, 20, 15]
max_num = max(numbers)
# 输出: 20
print(f"列表 {numbers} 中的最大值: {max_num}")max_of_args = max(100, 20, 300, 50)
# 输出: 300
print(f"参数中的最大值: {max_of_args}")

min():求最小值
min() 函数返回可迭代对象中的最小项,或者多个参数中的最小值。

numbers = [10, 5, 20, 15]
min_num = min(numbers)
# 输出: 5
print(f"列表 {numbers} 中的最小值: {min_num}")min_of_args = min(100, 20, 300, 50)
# 输出: 20
print(f"参数中的最小值: {min_of_args}")

abs():求绝对值
abs() 函数返回一个数的绝对值。

neg_num = -15
pos_num = 10
float_num = -3.14# 输出: 15
print(f"{neg_num} 的绝对值: {abs(neg_num)}")
# 输出: 10
print(f"{pos_num} 的绝对值: {abs(pos_num)}")
# 输出: 3.14
print(f"{float_num} 的绝对值: {abs(float_num)}")

round():四舍五入
round() 函数对数字进行四舍五入。你可以选择指定小数位数。

pi = 3.1415926
# 四舍五入到两位小数
rounded_pi = round(pi, 2)
# 四舍五入到最近的整数
rounded_int = round(pi)# 输出: 3.14
print(f"{pi} 四舍五入到两位小数: {rounded_pi}")
# 输出: 3
print(f"{pi} 四舍五入到整数: {rounded_int}")
# 注意:对于 .5,Python 倾向于舍入到偶数,所以是 2
print(f"2.5 四舍五入到整数: {round(2.5)}")
# 输出: 4
print(f"3.5 四舍五入到整数: {round(3.5)}")

输入输出函数

这些函数用于与用户进行交互或进行简单的数据输出。

print():打印输出
print() 函数是你在 Python 学习中最常用的函数之一,用于将内容输出到控制台。

name = "Alice"
age = 30print("Hello, World!")
print("我的名字是", name, ",我今年", age, "岁。")# 使用 f-string (推荐)
print(f"我的名字是 {name},我今年 {age} 岁。")# 可以改变分隔符 (sep) 和结尾符 (end)
# 输出: apple | banana | cherry.
print("apple", "banana", "cherry", sep=" | ", end=".\n")
print("这是新的一行。")

input():获取用户输入
input() 函数用于从用户那里获取一行文本输入。它会暂停程序的执行,直到用户输入内容并按下回车键。

prompt = input("请输入你的名字: ")
print(f"你好, {prompt}!")# 注意:input() 函数总是返回字符串类型
num1_str = input("请输入一个数字: ")
# 需要手动转换为整数类型
num1 = int(num1_str)
print(f"你输入的数字是: {num1}, 类型是: {type(num1)}")

其他常用函数

除了上面分类的函数,还有一些同样重要且常用的内置函数。

type():获取数据类型
type() 函数返回一个对象的类型。

a = 10
b = "hello"
c = [1, 2]# 输出: <class 'int'>
print(f"变量 a 的类型: {type(a)}")
# 输出: <class 'str'>
print(f"变量 b 的类型: {type(b)}")
# 输出: <class 'list'>
print(f"变量 c 的类型: {type(c)}")

range():生成数字序列
range() 函数用于生成一个整数序列。它通常用于 for 循环中。

  • range(stop): 从 0 开始,到 stop-1 结束。
  • range(start, stop): 从 start 开始,到 stop-1 结束。
  • range(start, stop, step): 从 start 开始,到 stop-1 结束,步长为 step
# 从 0 到 4
for i in range(5):# 输出: 0 1 2 3 4print(i, end=" ")
print()# 从 2 到 4
for i in range(2, 5):# 输出: 2 3 4print(i, end=" ")
print()# 从 0 到 9,步长为 2
for i in range(0, 10, 2):# 输出: 0 2 4 6 8print(i, end=" ")
print()

enumerate():枚举可迭代对象
enumerate() 函数在遍历可迭代对象时,同时返回索引和对应的值。

fruits = ["apple", "banana", "cherry"]# 输出:
# 索引: 0, 水果: apple
# 索引: 1, 水果: banana
# 索引: 2, 水果: cherry
for index, fruit in enumerate(fruits):print(f"索引: {index}, 水果: {fruit}")

zip():打包迭代器
zip() 函数可以将多个可迭代对象打包成一个元组的迭代器,每个元组包含对应位置的元素。

names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 22]# 输出:
# Alice is 25 years old.
# Bob is 30 years old.
# Charlie is 22 years old.
for name, age in zip(names, ages):print(f"{name} is {age} years old.")

sorted():排序
sorted() 函数返回一个新的已排序的列表,而不会改变原始的可迭代对象。

numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers = sorted(numbers)
# 原始列表不变
print(f"原始列表: {numbers}")
# 输出: [1, 1, 2, 3, 4, 5, 6, 9]
print(f"排序后的列表: {sorted_numbers}")strings = ["banana", "apple", "cherry"]
sorted_strings = sorted(strings)
# 输出: ['apple', 'banana', 'cherry']
print(f"排序后的字符串列表: {sorted_strings}")# 倒序排序
sorted_desc = sorted(numbers, reverse=True)
# 输出: [9, 6, 5, 4, 3, 2, 1, 1]
print(f"倒序排序后的列表: {sorted_desc}")

总结

本章我们介绍了 Python 3 中一系列非常常用的内置函数,它们涵盖了类型转换、数学运算、输入输出以及其他实用功能。

  • 类型转换函数 (int(), float(), str(), list(), tuple(), set()) 帮助你在不同数据类型间灵活切换。
  • 数学运算函数 (len(), sum(), max(), min(), abs(), round()) 简化了常见的计算。
  • 输入输出函数 (print(), input()) 实现了程序与用户的基本交互。
  • 其他实用函数 (type(), range(), enumerate(), zip(), sorted()) 提供了更多高级的数据处理和迭代能力。
http://www.dtcms.com/a/325110.html

相关文章:

  • 数学与应用数学专业大学如何规划?就业前景怎么样?
  • vue3中 getCurrentInstance
  • 疯狂星期四文案网第35天运营日记
  • 补卡day16
  • special topic 8 (2) and topic 9 (1)
  • 亚麻云之全球加速器——CloudFront(CDN)服务入门
  • 系统测试讲解 - Java使用selenium实现滑块验证的处理详解
  • 关于linux操作系统下的文件操作方法:
  • 深度解析1688关键字搜索API接口:技术实现与应用探索
  • 【Nginx知识】nginx日志配置详解
  • 使用线性降维方法进行数据降维
  • token危机解决?扩散模型数据潜力3倍于自回归,重训480次性能仍攀升
  • Java历代JDK核心特性演进(JDK9-21精华版)
  • 【Docker实战入门】从核心概念到镜像构建
  • 微服务架构中过滤器(Filter)与拦截器(Interceptor)的区别
  • 线程池111
  • Spring Boot - 内置的9个过滤器用法
  • 串联所有单词的子串
  • 【力扣198】打家劫舍
  • Windows选择文件自动删除及输入框自动打字的解决办法
  • 当varchar和Nvarchar关联
  • 6A 工作流:让 Cursor、Trae 等AI编程助手按流程交付的实战手册
  • Java 基础编程案例:从输入交互到逻辑处理
  • 基于django的宠物用品购物商城的设计与实现
  • [创业之路-540]:经营分析会 - 如何实现销售0到1营收的突破
  • 从DDPM对比学习Diffusion Policy:生成模型到策略学习的演进
  • Spring Boot 开发三板斧:POM 依赖、注解与配置管理
  • 字节:计算机存储单位
  • 计算机视觉实战:用YOLO打造智能停车场空位雷达
  • 线程互斥与锁机制详解