Python编程:从分支到循环——水仙花数解析

需积分: 1 0 下载量 94 浏览量 更新于2024-08-04 收藏 4KB MD 举报
"水仙花数-python" 在编程领域,水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。在Python中,我们可以使用循环和条件判断来寻找这样的数字。以下将详细讲解标题和描述中提到的Python编程知识。 1. **Python分支** - **if单分支判断**:Python中的`if`语句用于进行条件判断,如果条件为真,则执行后面的代码块。例如: ```python age = 25 if age >= 18: print("你已经成年") print("可以去上网") ``` - **if双分支判断**:使用`if`和`else`可以实现两个可能的结果。如果`if`的条件为真,执行`if`后的代码,否则执行`else`后的代码。 ```python age = 25 if age >= 18: print("你已经成年,可以去上网") else: print("你还是未成年,不可以去上网") ``` - **if嵌套**:可以将多个`if`语句嵌套,形成更复杂的逻辑。但要注意,避免嵌套过深,以免代码难以理解和维护。 - **if的多分支判断**:使用`elif`(else if)可以添加额外的条件分支,避免了过多的嵌套。`else`部分用于没有匹配任何`if`或`elif`时执行的代码。 ```python score = 95 if 90 <= score <= 100: print("优秀") elif 80 <= score < 90: print("良好") elif 60 <= score < 80: print("及格") else: print("不及格") ``` 2. **Python循环** - **while循环**:当给定条件满足时,`while`循环会不断执行循环体内的代码,直到条件变为假。`else`子句在循环正常结束(即未通过`break`跳出循环)后执行。 ```python num = 0 while num < 10: num += 1 print(num) # 使用else num = 0 while num < 10: num += 1 print(num) else: print("循环执行结束") ``` - **for循环**:Python的`for`循环适用于遍历任何可迭代对象(如列表、元组、字符串等)。每次循环,`for`会取出集合中的一个元素赋值给变量,并执行循环体内的代码。 ```python # 遍历1-10 for num in range(1, 11): print(num) ``` 3. **Python分支和循环案例使用** - **字符串的反转**:可以使用`for`循环和切片操作来实现字符串的反转。 ```python str = "hello" reversed_str = str[::-1] print(reversed_str) ``` - **打印1-100之间的偶数**:使用`for`循环和条件判断可以打印出所有偶数。 ```python for num in range(1, 101): if num % 2 == 0: print(num) ``` - **简单计算器**:可以结合`if`判断和用户输入来实现基本的加减乘除运算。 - **打印九九乘法表**:利用`for`循环和嵌套结构。 ```python for i in range(1, 10): for j in range(1, i+1): print(f"{j} * {i} = {i*j}", end="\t") print() ``` - **判断水仙花数**:使用三重`if`或`if-elif-else`结构,检查一个三位数的各位数字立方和是否等于该数本身。 ```python num = 153 hundreds = num // 100 tens = (num // 10) % 10 ones = num % 10 if hundreds ** 3 + tens ** 3 + ones ** 3 == num: print(f"{num}是水仙花数") else: print(f"{num}不是水仙花数") ``` 这些基础知识构成了Python编程的基本框架,对于初学者来说,理解和掌握这些概念是至关重要的。通过学习和实践,你可以编写更复杂、功能丰富的程序。在编写代码时,遵循良好的编码风格,如适当的缩进,可以使代码更易读且减少潜在错误。