1. 字符串长度计算
计算字符串中的字符数量(包括空格和标点符号):
text = "Python编程很有趣!" print(len(text)) # 输出: 11
中英文字符在Python中都被视为一个字符单位。
掌握Python中计算对象长度的核心函数
Python内置的len()函数用于返回对象的长度或项目个数。它是Python中最常用的内置函数之一,可以用于多种数据结构类型。
length = len(object)
其中object
可以是字符串、列表、元组、字典、集合等可迭代对象。
计算字符串中的字符数量(包括空格和标点符号):
text = "Python编程很有趣!" print(len(text)) # 输出: 11
中英文字符在Python中都被视为一个字符单位。
获取列表中元素的数量:
fruits = ['苹果', '香蕉', '橙子', '葡萄', '芒果'] print(len(fruits)) # 输出: 5 # 嵌套列表 matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(len(matrix)) # 输出: 3(外层列表长度)
计算字典中键值对的数量:
student = { 'name': '张三', 'age': 20, 'major': '计算机科学', 'university': '清华大学' } print(len(student)) # 输出: 4
同样适用于元组和集合:
# 元组 colors = ('红', '绿', '蓝', '黄', '紫') print(len(colors)) # 输出: 5 # 集合 unique_numbers = {1, 3, 5, 7, 9, 3, 5} # 重复元素会被自动去重 print(len(unique_numbers)) # 输出: 5
当调用len()函数时,Python实际上调用的是对象的__len__()方法:
my_list = [1, 2, 3] print(len(my_list)) # 输出: 3 print(my_list.__len__()) # 输出: 3
通过实现__len__()
方法,可以使自定义类支持len()函数:
class Playlist: def __init__(self, songs): self.songs = songs def __len__(self): return len(self.songs) my_playlist = Playlist(['Song1', 'Song2', 'Song3']) print(len(my_playlist)) # 输出: 3
num = 42 print(len(num)) # TypeError: object of type 'int' has no len()
数字类型没有长度概念,会导致TypeError。
value = None print(len(value)) # TypeError: object of type 'NoneType' has no len()
None是空值对象,没有长度属性。
len()函数的时间复杂度通常是O(1),因为Python对象在创建时已经存储了长度信息。但对于自定义实现,性能取决于你的__len__()方法实现。
username = input("请输入用户名(6-12个字符): ") if len(username) < 6: print("用户名太短!") elif len(username) > 12: print("用户名太长!") else: print("用户名有效!")
shopping_list = ['牛奶', '面包', '鸡蛋', '水果'] # 使用len()控制循环次数 for i in range(len(shopping_list)): print(f"{i+1}. {shopping_list[i]}") # 更Pythonic的方式 for index, item in enumerate(shopping_list, start=1): print(f"{index}. {item}")
data = { 'employees': ['张三', '李四', '王五'], 'departments': ['技术部', '市场部', '财务部'], 'projects': ['项目A', '项目B'] } print(f"员工总数: {len(data['employees'])}") print(f"部门数量: {len(data['departments'])}") print(f"项目数量: {len(data['projects'])}")
"掌握len()函数是成为Python开发者的基础一步,它将在你的编程旅程中频繁出现。"
本文由YuanShai于2025-08-16发表在吾爱品聚,如有疑问,请联系我们。
本文链接:https://www.521pj.cn/20258309.html
发表评论