`break`, `continue`, `pass`

`break`, `continue`, `pass`

在 Python 中,循环控制语句主要有 breakcontinuepass。这些语句可以帮助我们控制循环的执行流程。下面我们逐一介绍这三种语句。

1. break 语句

break 语句用于退出循环。无论是在 for 循环还是 while 循环中,当程序执行到 break 语句时,会立即终止整个循环,跳出循环体。

示例代码:

1
2
3
4
5
6
# 使用 break 语句的示例
for i in range(10):
if i == 5:
print("退出循环")
break # 当 i 等于 5 时,退出循环
print(i)

输出结果:

1
2
3
4
5
6
0
1
2
3
4
退出循环

在这个例子中,当 i 的值达到 5 时,break 被执行,循环被终止。

2. continue 语句

continue 语句用于跳过当前循环的剩余部分,并直接进入下一次循环的开始。注意,continue 只会影响当前的循环,而不会终止整个循环。

示例代码:

1
2
3
4
5
# 使用 continue 语句的示例
for i in range(10):
if i % 2 == 0:
continue # 如果 i 是偶数,则跳过这次循环
print(i) # 只打印奇数

输出结果:

1
2
3
4
5
1
3
5
7
9

在这个例子中,当 i 是偶数时,continue 语句被执行,随即跳过 print(i) 的输出,继续下一次循环。

3. pass 语句

pass 语句是一个空的占位符,它什么也不做,通常用于需要语法上完整但不需要执行任何操作的地方。pass 可以使代码结构更完整,尤其是在你需要定义一个函数、循环或条件语句,但尚未实现时。

示例代码:

1
2
3
4
5
# 使用 pass 语句的示例
for i in range(5):
if i == 2:
pass # 这里没有任何操作,只是占位
print(i)

输出结果:

1
2
3
4
5
0
1
2
3
4

在这个例子中,当 i 等于 2 时,pass 被执行,程序没有跳过该值,依然输出 2

总结

  • 使用 break 可以提前退出循环。
  • 使用 continue 可以跳过当前的循环迭代,直接进入下一次。
  • 使用 pass 可以作为占位符,表示没有任何操作。

这些控制结构能够帮助你更灵活地处理循环逻辑,应根据具体需求来选择使用。

datetime与time模块

datetime与time模块

在Python中,日期和时间的处理可通过datetimetime模块来实现。下面我们将详细探讨这两个模块的使用。

1. datetime模块

datetime模块提供了一些用于处理日期和时间的类和方法。

1.1 导入datetime模块

在使用datetime模块之前,我们需要导入它:

1
import datetime

1.2 常用类

1.2.1 datetime.datetime

datetime.datetime是最常用的类,表示一个日期和时间的组合。

  • 创建当前日期和时间的实例
1
2
now = datetime.datetime.now()
print(now) # 示例输出:2023-10-01 10:54:23.456789
  • 创建指定日期和时间的实例
1
2
specific_date = datetime.datetime(2023, 1, 1, 12, 0, 0)
print(specific_date) # 输出:2023-01-01 12:00:00

1.2.2 datetime.date

datetime.date类只表示日期,包含年、月、日。

  • 当前日期
1
2
today = datetime.date.today()
print(today) # 示例输出:2023-10-01
  • 创建指定日期
1
2
my_birthday = datetime.date(1990, 5, 20)
print(my_birthday) # 输出:1990-05-20

1.2.3 datetime.time

datetime.time类表示时间,不包含日期。

  • 创建时间实例
1
2
my_time = datetime.time(14, 30, 15)
print(my_time) # 输出:14:30:15

1.3 日期和时间的常用操作

1.3.1 获取当前时间的时间戳

1
2
timestamp = now.timestamp()
print(timestamp) # 输出:1672531199.0 (具体数值根据时间不同而不同)

1.3.2 日期运算

你可以对日期进行加减法操作:

1
2
3
4
5
6
7
8
9
10
11
12
from datetime import timedelta

# 当前日期
now = datetime.datetime.now()

# 一周后的日期
next_week = now + timedelta(weeks=1)
print(next_week)

# 一年前的日期
last_year = now - timedelta(days=365)
print(last_year)

1.3.3 格式化日期时间

你可以使用strftime方法将日期时间格式化为字符串:

1
2
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_date) # 示例输出:2023-10-01 10:54:23

1.4 字符串转日期时间

使用strptime方法将字符串转换为datetime对象:

1
2
3
date_string = "2023-10-01 10:54:23"
date_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print(date_object) # 输出:2023-10-01 10:54:23

2. time模块

time模块提供了包括时间的实现功能,但通常较少用于处理日期。

2.1 导入time模块

1
import time

2.2 常用函数

2.2.1 获取当前时间戳

1
2
timestamp = time.time()
print(timestamp) # 输出当前的时间戳

2.2.2 sleep函数

这个函数可以让程序暂停指定的秒数:

1
2
3
print("Start")
time.sleep(2) # 暂停2秒
print("End") # 2秒后输出

2.2.3 格式化时间

strftime函数可以将struct_time格式化为字符串:

1
2
3
current_time = time.localtime()  # 获取当前本地时间
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", current_time)
print(formatted_time) # 示例输出:2023-10-01 10:54:23

2.2.4 字符串转时间

strptime可以将字符串转换为时间对象:

1
2
3
time_string = "2023-10-01 10:54:23"
time_object = time.strptime(time_string, "%Y-%m-%d %H:%M:%S")
print(time_object) # 输出时间对象

3. 总结

在处理日期和时间时,datetime模块提供了更丰富的功能,包括日期运算、格式化等。而time模块则更为简单,主要用于时间的获取和延迟操作。根据具体的需求,选择合适的模块进行日期和时间的处理是非常重要的。

通过掌握这些用法,你可以在Python中更加灵活和高效地处理时间和日期。

18 从零开始学习Python - 小白教程

18 从零开始学习Python - 小白教程

学习目标

学习如何定义和调用函数,掌握函数在Python中的基本用法。

什么是函数

在Python中,函数是一段可以重复使用的代码块,用于实现特定的功能。通过函数,我们可以将复杂的任务分解成简单的小模块,提高代码的可读性和维护性。

函数的定义

使用def关键字定义一个函数,基本格式如下:

1
2
3
def function_name(parameters):
# 函数体
return value
  • function_name:函数的名称。命名规则与变量名称相同。
  • parameters:可选的输入参数,可以是多个,使用逗号分隔。
  • function body:函数的具体实现。
  • return:可选的返回值,使用return语句来返回计算结果。

示例:定义一个简单的函数

下面是一个简单的函数定义的示例,用于计算两个数的和:

1
2
3
def add_numbers(a, b):
result = a + b
return result

函数的调用

定义完函数后,我们可以通过函数名称和必要的参数来调用它。调用的基本格式是:

1
function_name(arguments)
  • arguments:传递给函数的参数。

示例:调用函数

接下来,我们调用上面定义的add_numbers函数:

1
2
sum_result = add_numbers(5, 10)
print(sum_result) # 输出: 15

参数的类型

  1. 位置参数:按顺序传递给函数的参数。
  2. 关键字参数:以key=value的方式传递参数,可以乱序传递。

示例:使用关键字参数

1
2
3
4
5
def greet(name, greeting="Hello"):
return f"{greeting}, {name}!"

print(greet("Alice")) # 输出: Hello, Alice!
print(greet(name="Bob", greeting="Hi")) # 输出: Hi, Bob!

默认参数

在函数定义中,可以为某些参数设置默认值,从而使得这些参数在调用时变为可选。

示例:设置默认参数

1
2
3
4
5
def multiply(a, b=2):
return a * b

print(multiply(5)) # 输出: 10
print(multiply(5, 3)) # 输出: 15

返回值

函数可以返回一个值,使用return语句返回;如果不使用return,函数将返回None

示例:返回多个值

函数可以返回多个值,使用元组的形式:

1
2
3
4
5
def division(a, b):
return a // b, a % b # 返回商和余数

quotient, remainder = division(10, 3)
print(f"商: {quotient}, 余数: {remainder}") # 输出: 商: 3, 余数: 1

小结

在本节中,我们学习了如何定义和调用函数,了解了函数的参数类型、默认参数以及返回值等基本概念。掌握这些知识将使你能够更好地组织和管理你的代码。继续练习,创造属于你的函数吧!