python基础---2.流程控制及函数

news2024/12/23 18:19:04

在这里插入图片描述

🎈个人主页:靓仔很忙i
💻B 站主页:👉B站👈
🎉欢迎 👍点赞✍评论⭐收藏
🤗收录专栏:python
🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步!


一 流程控制

1.1 条件分支

在Python中,条件分支(Conditional Statements)是控制程序流程的重要结构,允许根据特定条件选择性地执行代码块。Python提供了 if、elif 和 else 来实现条件分支。

1.1.1 if 语句

if 语句用于执行一个代码块,如果指定的条件为真(True)。语法如下:

if condition:
    # 如果条件为真时执行的代码块
    statement1
    statement2
    ...

例如:

x = 10
if x > 5:
    print("x 大于 5")

1.1.2. if … else 语句

if … else 语句用于执行两个不同的代码块,根据条件的真假分别执行。语法如下:

if condition:
    # 如果条件为真时执行的代码块
    statement1
    statement2
    ...
else:
    # 如果条件为假时执行的代码块
    statement3
    statement4
    ...

例如:

x = 3
if x > 5:
    print("x 大于 5")
else:
    print("x 小于等于 5")

1.1.3 if … elif … else 语句

if … elif … else 语句用于执行多个条件分支,每个 elif 语句都检查一个新条件,直到找到为真的条件为止。最后的 else 语句是可选的,用于处理所有条件都不为真的情况。语法如下:

if condition1:
    # 如果条件1为真时执行的代码块
    statement1
    statement2
    ...
elif condition2:
    # 如果条件2为真时执行的代码块
    statement3
    statement4
    ...
elif condition3:
    # 如果条件3为真时执行的代码块
    statement5
    statement6
    ...
else:
    # 如果所有条件都不为真时执行的代码块
    statement7
    statement8
    ...

例如:

x = 10
if x > 15:
    print("x 大于 15")
elif x > 5:
    print("x 大于 5,但小于等于 15")
else:
    print("x 小于等于 5")

注意事项

  • 每个条件语句后面都需要使用冒号 :。
  • 每个代码块(缩进的部分)中的语句数量可以是任意的,但必须保持一致的缩进级别。
  • elif 和 else 部分是可选的,可以根据需要省略。

条件分支允许根据不同的情况执行不同的代码逻辑,是编写程序时非常常用和重要的控制结构之一。

1.2 循环

在Python中,循环(Loops)是一种控制流程的结构,允许多次执行同一段代码。Python支持两种主要的循环类型:for 循环和 while 循环。

1.2.1 for 循环

for 循环用于遍历任何可迭代对象(iterable),如列表、元组、字符串等,逐个访问其元素,并执行特定的代码块。语法如下:

for element in iterable:
    # 每次迭代时执行的代码块
    statement1
    statement2
    ...

其中 element 是每次迭代中当前的元素,iterable 是要迭代的可迭代对象。例如:

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

上述代码将输出:

apple
banana
cherry

range() 函数结合 for 循环
常用于循环指定次数的情况,可以结合 range() 函数生成一系列数字。range() 函数可以指定起始值、结束值(不包括)、步长等。例如:

for i in range(5):
    print(i)

上述代码将输出:

0
1
2
3
4

1.2.2 while 循环

while 循环用于在条件为真(True)时重复执行代码块,直到条件变为假(False)。语法如下:

while condition:
    # 每次循环时执行的代码块
    statement1
    statement2
    ...

其中 condition 是一个布尔表达式,当条件为真时,循环会继续执行。例如:

i = 1
while i <= 5:
    print(i)
    i += 1

上述代码将输出:

1
2
3
4
5

1.2.3 循环控制语句

在循环中,可以使用以下控制语句来改变循环的执行流程:

  • break:跳出当前循环,不再执行剩余的循环体代码。
  • continue:跳过当前循环中的剩余代码,并开始下一次循环。
  • pass:表示空操作,什么也不做,可以用作占位符,保持代码结构完整。

这些控制语句通常与条件语句结合使用,以便根据特定条件在循环中执行特定的操作。

1.2.4 示例

下面是一个结合 for 循环和 if 条件语句的示例,用于打印列表中的偶数:

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
for num in numbers:
    if num % 2 == 0:
        print(num)

输出结果为:

2
4
6
8
10

注意事项

  • 在使用循环时,确保循环条件最终会变为假,否则可能导致无限循环。
  • 循环体内的代码块需要严格缩进,通常使用四个空格来表示缩进层级。
  • 不同的循环类型适用于不同的场景,选择合适的循环结构可以使代码更加清晰和高效。

循环结构是程序中常见的控制结构之一,掌握好循环的基本语法和应用场景,能够有效地处理和操作多次重复执行的任务。

二 函数

2.1 定义

在Python中,函数(Functions)是一种重要的代码组织和复用结构,允许将一段代码逻辑封装起来,以便在程序中多次调用。函数定义的基本语法如下:

def function_name(parameters):
    """
    Docstring: 函数的文档字符串,用于描述函数的作用、参数和返回值等信息(可选)
    """
    # 函数体,即函数执行的代码块
    statement1
    statement2
    ...
    return expression   # 可选,用于返回值

其中各部分的解释如下:

  • def 关键字:用于定义函数,后面跟着函数的名称。
  • function_name:函数的名称,遵循命名规则,用于在程序中调用函数。
  • parameters:函数的参数列表,包括函数调用时需要传递的参数。参数可以是位置参数、默认参数、可变长参数和关键字参数等。
  • Docstring:函数的文档字符串,用于描述函数的作用、参数、返回值等信息。文档字符串是可选的,但推荐在定义函数时编写,可以通过 help() 函数查看。
  • 函数体:函数体是函数的核心部分,包含函数执行的代码块,以冒号 : 开始,需要缩进来表示属于函数体的代码块。
  • return 语句:可选的 return 语句用于从函数中返回值给调用者。函数可以不返回任何值(此时返回 None),也可以返回一个或多个值。如果没有 return 语句,函数执行完毕后默认返回 None。
    示例
    下面是一个简单的函数定义示例,用于计算两个数的和:
def add_numbers(a, b):
    """
    计算两个数的和,并返回结果
    """
    result = a + b
    return result

在上述示例中:

  • 函数名称为 add_numbers,接受两个参数 a 和 b。
  • 函数体内部计算了 a 和 b 的和,并通过 return 语句返回结果。

2.1.1 调用函数

定义好函数后,可以通过函数名称加上参数列表来调用函数,例如:

sum_result = add_numbers(3, 5)
print(sum_result)  # 输出 8

2.1.2 参数类型

Python 中的函数参数可以有多种类型:

  • 位置参数:按照顺序传递给函数的参数,如上述示例中的 a 和 b。
  • 默认参数:在定义函数时指定默认值的参数,调用时可以不传递这些参数。
  • 可变长参数:允许传递任意数量的参数,包括不定数量的位置参数和关键字参数。
  • 关键字参数:传递给函数的参数带有名称,可以在函数内部使用名称来访问这些参数。

2.1.3 注意事项

  • 函数的命名应遵循命名规则,通常使用小写字母和下划线 _ 组合命名,以提高代码可读性。
  • 函数体内的代码块需要缩进,通常使用四个空格来表示缩进层级。
  • 在定义函数时,建议编写清晰、简洁的文档字符串,描述函数的作用、参数、返回值等信息,以方便他人或自己日后使用时的参考。

函数是Python编程中非常重要的概念,能够有效地组织和管理代码,提高代码的重用性和可维护性。

2.2 参数传递

在Python中,参数传递是指在调用函数时将数据传递给函数的过程。Python 中的函数参数可以分为四种类型:位置参数、默认参数、可变长参数和关键字参数。这些参数的使用方式和传递方式略有不同。

2.2.1. 位置参数

位置参数是最常见的参数类型,按照顺序依次传递给函数。在定义函数时,函数声明中列出的参数称为位置参数。调用函数时,传递的实际参数必须按照与函数声明中参数的顺序相匹配。

示例:

def greet(name, greeting):
    print(f"{greeting}, {name}!")

greet("Alice", "Hello")

在上述示例中,“Alice” 和 “Hello” 分别被传递给 name 和 greeting 位置参数。

2.2.2 默认参数

默认参数在函数定义时提供默认值,如果调用函数时没有传递该参数,则使用默认值。默认参数必须位于位置参数之后。
示例:

def greet(name, greeting="Hello"):
    print(f"{greeting}, {name}!")

greet("Alice")          # 输出 "Hello, Alice!"
greet("Bob", "Hi")      # 输出 "Hi, Bob!"

在上述示例中,greeting 参数有默认值 “Hello”,因此在调用 greet() 函数时可以选择不传递 greeting 参数。

2.2.3. 可变长参数

可变长参数允许传递任意数量的位置参数或关键字参数给函数。Python 提供了两种形式的可变长参数:*args 和 **kwargs。

  • *args:用于传递不定数量的位置参数,将参数作为元组(tuple)传递给函数。
  • **kwargs:用于传递不定数量的关键字参数,将参数作为字典(dictionary)传递给函数。
    示例:
def sum_numbers(*args):
    total = 0
    for num in args:
        total += num
    return total

result = sum_numbers(1, 2, 3, 4)
print(result)  # 输出 10

在上述示例中,*args 接收传递给 sum_numbers() 函数的所有位置参数,并将它们作为元组 (1, 2, 3, 4) 进行处理。

2.2.4. 关键字参数

关键字参数允许传递不定数量的关键字参数给函数,即传递参数时指定参数名。在函数内部,关键字参数被视为字典。

示例:

def greet(name, greeting="Hello", **kwargs):
    additional_info = ", ".join(f"{key}={value}" for key, value in kwargs.items())
    print(f"{greeting}, {name}! {additional_info}")

greet("Alice", greeting="Hi", age=30, city="New York")

在上述示例中,除了 name 和 greeting 参数外,greet() 函数还接受任意数量的关键字参数 (age=30 和 city=“New York”),这些参数被捕获并作为字典 kwargs 在函数内部处理。

2.2.5 参数传递方式

在Python中,参数传递是通过对象的引用来实现的。当传递不可变对象(如整数、字符串、元组)时,传递的是对象的值。而当传递可变对象(如列表、字典)时,传递的是对象的引用,因此在函数内部对可变对象的修改会影响到外部对象。

示例:

def modify_list(lst):
    lst.append(4)

my_list = [1, 2, 3]
modify_list(my_list)
print(my_list)  # 输出 [1, 2, 3, 4]

在上述示例中,my_list 是一个列表,作为参数传递给 modify_list() 函数时,lst 是对同一列表的引用,因此在函数内部对 lst 的修改也影响了外部的 my_list。

理解参数传递的方式对于编写和理解函数的行为非常重要,特别是在处理可变对象时需要注意。

2.3 作用域

在Python中,作用域(Scope)指的是变量的可见性和访问规则,即变量在程序中的有效范围。了解作用域对于理解变量的生命周期、名称空间以及程序中函数和模块之间的交互至关重要。

2.3.1 局部作用域(Local Scope)

局部作用域是在函数内部定义的作用域,其变量只能在函数内部访问。当函数调用结束时,局部作用域也随之销毁,其中的变量也将被释放。

示例:

def my_function():
    x = 10  # x 是局部变量
    print(x)

my_function()  # 输出 10
print(x)  # 这里会报错,因为 x 是局部变量,超出了其作用域

在上述示例中,x 是 my_function() 函数内的局部变量,它在函数外部是不可见的。

2.3.2 全局作用域(Global Scope)

全局作用域是在模块顶层定义的作用域,其变量可以在整个模块内访问,包括模块中的函数内部。在模块被导入和运行时创建,在程序执行期间一直存在。

示例:

x = 10  # x 是全局变量

def my_function():
    print(x)

my_function()  # 输出 10
print(x)  # 输出 10

在上述示例中,x 是在模块顶层定义的全局变量,可以被模块中的任何地方访问。

2.3.4 嵌套作用域(Enclosing Scope)

嵌套作用域是指在函数内部定义了另一个函数的情况。在这种情况下,内部函数可以访问外部函数的变量,但外部函数不能直接访问内部函数的变量。

示例:

def outer_function():
    y = 20  # y 是外部函数的局部变量
    
    def inner_function():
        print(y)  # 内部函数可以访问外部函数的变量 y
    
    inner_function()

outer_function()  # 输出 20

在上述示例中,inner_function() 可以访问外部函数 outer_function() 中的变量 y,这是因为嵌套作用域的存在。

2.3.4 作用域规则

Python 的作用域规则可以概括为以下几点:

  • 在函数内部可以访问全局变量,但不能修改它(除非使用 global 关键字)。
  • 在函数内部可以创建新的局部变量,其作用域限定在函数内部。
  • 函数参数也是局部变量,其作用域限定在函数内部。

2.3.5 global 和 nonlocal 关键字

global 关键字:用于在函数内部声明一个变量是全局变量,可以在函数内部修改全局变量的值。
示例:

x = 10

def my_function():
    global x
    x = 20  # 修改全局变量 x 的值

my_function()
print(x)  # 输出 20

nonlocal 关键字:用于在嵌套函数中声明一个变量是外部(非全局)作用域的变量,用来修改闭包中的变量。

def outer_function():
    y = 30
    
    def inner_function():
        nonlocal y
        y = 40  # 修改外部函数的变量 y
    
    inner_function()
    print(y)  # 输出 40

outer_function()

在上述示例中,inner_function() 使用 nonlocal 关键字来修改外部函数 outer_function() 中的变量 y。

2.4 lambda表达式

Lambda 表达式是Python中的一种匿名函数,也称为lambda函数。它允许在代码中创建小的、一次性的、没有名称的函数。

2.4.1 Lambda 表达式的语法

Lambda 表达式的基本语法如下:

lambda arguments: expression

其中:

lambda 是关键字,表示创建lambda函数。
arguments 是函数的参数列表,可以是任意数量的参数,但只能有一个表达式。
expression 是一个返回值的表达式,表示函数要执行的操作。
示例
下面是一个简单的 lambda 表达式的例子,用于计算两个数的和:

add_numbers = lambda x, y: x + y
print(add_numbers(3, 5))  # 输出 8

在上述示例中,lambda x, y: x + y 创建了一个 lambda 函数,并将其赋值给变量 add_numbers。这个 lambda 函数接受两个参数 x 和 y,并返回它们的和。

2.4.2 使用 lambda 表达式的场景

Lambda 表达式通常用于以下场景:

  • 作为简单函数的替代:当函数体较短且仅需要执行单一操作时,可以使用 lambda 表达式定义一个简洁的匿名函数。
  • 作为函数参数:lambda 表达式常用于函数的参数中,例如在 map()、filter()、sorted() 等函数中,用于传递简单的操作逻辑。
  • 在闭包中使用:lambda 表达式可以用在函数内部,用来定义内部函数的返回值。

2.4.3 与 def 定义函数的区别

Lambda 表达式与使用 def 关键字定义的普通函数相比,有以下几点不同:

  • 匿名性:lambda 表达式是匿名的,没有函数名。
  • 单一表达式:lambda 表达式只能包含一个表达式,而普通函数可以包含多个语句和复杂的逻辑。
  • 语法简洁:lambda 表达式语法更为紧凑,适合简单的函数操作。

2.4.4 注意事项

虽然 lambda 表达式非常方便和简洁,但也有一些限制和适用情况:

  • lambda 函数的功能通常较简单,适合处理一些简单的数据转换和过滤操作。
  • 不推荐在 lambda 表达式中编写复杂的逻辑或多行代码,这样会降低代码的可读性。

总体来说,lambda 表达式在需要快速定义和使用简单函数时非常有用,能够提高代码的简洁性和可读性,但在复杂逻辑和功能需求较多的情况下,建议使用普通的命名函数(使用 def 定义)。

2.4.5 代码示例

# 示例 1:计算平方
square = lambda x: x ** 2
print(square(5))  # 输出 25

# 排序列表
points = [(1, 2), (3, 1), (5, 4), (2, 5)]
points_sorted = sorted(points, key=lambda x: x[1])  # 按照元组的第二个元素排序
print(points_sorted)  # 输出 [(3, 1), (1, 2), (5, 4), (2, 5)]


# 将列表中的字符串转换为大写
words = ['apple', 'banana', 'cherry']
uppercase_words = list(map(lambda x: x.upper(), words))
print(uppercase_words)  # 输出 ['APPLE', 'BANANA', 'CHERRY']

# 过滤列表中的偶数
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 输出 [2, 4, 6, 8, 10]

#使用 lambda 表达式作为排序的键函数
students = [
    {'name': 'Alice', 'grade': 80},
    {'name': 'Bob', 'grade': 75},
    {'name': 'Charlie', 'grade': 90},
    {'name': 'David', 'grade': 85}
]
students_sorted = sorted(students, key=lambda x: x['grade'], reverse=True)
print(students_sorted)
# 输出 [{'name': 'Charlie', 'grade': 90}, {'name': 'David', 'grade': 85}, {'name': 'Alice', 'grade': 80}, {'name': 'Bob', 'grade': 75}]

2.5 常用内置函数

Python内置了许多常用的函数,这些函数可以直接在Python解释器中使用,无需导入额外的模块。以下是一些常用的内置函数及其简要说明:

  1. 类型转换函数

int():将一个数值或字符串转换为整数。
float():将一个数值或字符串转换为浮点数。
str():将指定的对象转换为字符串。
list():将一个可迭代对象转换为列表。
tuple():将一个可迭代对象转换为元组。
dict():创建一个字典。可以接受关键字参数、可迭代对象(如元组)或者映射对象(如字典)。

  1. 数学相关函数

abs():返回一个数的绝对值。
max():返回给定参数的最大值。
min():返回给定参数的最小值。
pow():返回 x 的 y 次方,即 x>>y。
round():对一个数进行四舍五入。

  1. 序列操作函数

len():返回对象的长度(元素个数)。
sorted():对可迭代对象进行排序,返回一个新的列表。
reversed():返回一个反向迭代器,用于反向遍历序列。

  1. 输入输出函数

print():打印输出到控制台。
input():从控制台获取用户输入。

  1. 函数操作函数

lambda:创建匿名函数。
map():将一个函数应用于迭代器的每个元素,返回一个结果迭代器。
filter():过滤器函数,返回一个由使函数返回 True 的元素组成的迭代器。

  1. 其他常用函数

range():生成一个指定范围内的整数序列。
enumerate():返回一个枚举对象,包含迭代器的索引和值。
zip():将多个可迭代对象打包成一个元组序列。

示例
下面是一些常用内置函数的示例:

# 类型转换函数示例
print(int("10"))  # 输出 10
print(float("3.14"))  # 输出 3.14
print(str(123))  # 输出 "123"
print(list(range(5)))  # 输出 [0, 1, 2, 3, 4]
print(tuple([1, 2, 3]))  # 输出 (1, 2, 3)
print(dict([('a', 1), ('b', 2)]))  # 输出 {'a': 1, 'b': 2}

# 数学相关函数示例
print(abs(-5))  # 输出 5
print(max(3, 7, 1))  # 输出 7
print(min(4, 2, 6))  # 输出 2
print(pow(2, 3))  # 输出 8
print(round(3.14159, 2))  # 输出 3.14

# 序列操作函数示例
print(len([1, 2, 3]))  # 输出 3
print(sorted([3, 1, 2]))  # 输出 [1, 2, 3]
print(list(reversed([1, 2, 3])))  # 输出 [3, 2, 1]

# 输入输出函数示例
name = input("Enter your name: ")
print("Hello,", name)

# 函数操作函数示例
add = lambda x, y: x + y
print(add(3, 5))  # 输出 8

numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x ** 2, numbers))
print(squared)  # 输出 [1, 4, 9, 16, 25]

even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 输出 [2, 4]

# 其他常用函数示例
print(list(range(1, 5)))  # 输出 [1, 2, 3, 4]

for index, value in enumerate(['a', 'b', 'c']):
    print(index, value)
# 输出:
# 0 a
# 1 b
# 2 c

print(list(zip([1, 2, 3], ['a', 'b', 'c'])))  # 输出 [(1, 'a'), (2, 'b'), (3, 'c')]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1954103.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Godot入门 07 世界构建2.0

添加基础节点Node&#xff0c;重命名为Coins&#xff0c;整理场景树&#xff0c;拖动Coin到Coins节点下。 添加基础节点Node&#xff0c;重命名为Platforms&#xff0c;整理场景树&#xff0c;拖动Platform到Platforms节点下。 添加游戏背景 设置当前图层名称为Mid 添加图层元…

sql基础查询

1.基础查询语法 distinct去重 例子&#xff1a; 尽量不写* 影响效率

智慧校园行政办公:优化车辆保险费用管理的新选择

在智慧校园的行政办公系统中&#xff0c;车辆保险费用管理功能扮演着不可或缺的角色&#xff0c;它专注于校园内公务用车的保险费用的系统化与自动化管理&#xff0c;旨在提升财务管理的透明度&#xff0c;减少人为失误&#xff0c;优化保险支出。这一功能的核心在于信息的准确…

Javascript面试基础6【每日更新10】

Gulp gulp是前端开发过程中一种基于流的代码构建工具&#xff0c;是自动化项目的构建利器;它不仅能对网站资源进行优化&#xff0c;而且在开发过程中很多重复的任务能够使用正确的工具自动完成 Gulp的核心概念:流 流&#xff0c;简单来说就是建立在面向对象基础上的一种抽象的…

【前端 14】Vue常见指令

Vue常见指令 Vue.js 是一个构建用户界面的渐进式框架&#xff0c;它通过一系列简洁的指令&#xff08;Directives&#xff09;来增强HTML的功能&#xff0c;使得开发者能够更加方便地构建出响应式的Web应用。本文将详细讲解Vue中的几个核心指令&#xff1a;v-bind、v-model、v…

[算法题]爱丽丝的人偶(一)

题目链接: 爱丽丝的人偶&#xff08;一&#xff09; 定义两个变量, 分别初始化为 1 和 n, 让两个变量不断向中间聚拢, 并同时按先输出最小值再输出最大值的规律输出, 如图: 这样就满足题意排好了, 题解代码: #include <iostream> using namespace std;int main() {int …

PlantUML学习笔记-嵌入式系统设计常用图例

在嵌入式系统设计过程中&#xff0c;需要使用一些图例对系统框架及业务流程进行说明&#xff0c;以便于多人协同开发及后期的系统维护&#xff0c;提高团队开发效率。 1. 嵌入式设计开发常使用的图例&#xff1a; 1.1 用例图&#xff08;Use Case Diagram&#xff09; 用例图…

美国GE工业大项目中断,一天内市值蒸发近290亿人民币,波及西门子等同行……...

导语 大家好&#xff0c;我是社长&#xff0c;老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 本周二&#xff0c;美国东海岸发生了一起令人瞠目结舌的事件。GE Vernova公司参与的Vineyard Wind海上风电项目的一片巨型涡轮机叶片竟然断裂坠海…

《JavaEE》----2.<多线程的简介创建Thread类>

前言&#xff1a; 大家好&#xff0c;我目前在学习java。我准备利用这个暑假&#xff0c;来复习之前学过的内容&#xff0c;并整理好之前写过的博客进行发布。如果博客中有错误或者没有读懂的地方。热烈欢迎大家在评论区进行讨论&#xff01;&#xff01;&#xff01; 喜欢我文…

Python装饰器:让函数更强大

在Python编程中&#xff0c;装饰器是一个强大的工具&#xff0c;它允许程序员以一种简洁优雅的方式修改或增强函数的行为&#xff0c;而无需更改其源代码。本文将介绍装饰器的基本概念、工作原理以及一些实际应用案例。 什么是装饰器&#xff1f; 装饰器本质上是一个接受函数…

Python酷库之旅-第三方库Pandas(049)

目录 一、用法精讲 176、pandas.Series.rank方法 176-1、语法 176-2、参数 176-3、功能 176-4、返回值 176-5、说明 176-6、用法 176-6-1、数据准备 176-6-2、代码示例 176-6-3、结果输出 177、pandas.Series.sem方法 177-1、语法 177-2、参数 177-3、功能 177…

【C语言】数组名的不同情况

前言 在C语言中&#xff0c;数组名的行为在不同的上下文中有细微的区别。数组名本质上是一个指向数组第一个元素的指针&#xff0c;但在某些情况下&#xff0c;它的行为会有所不同。以下是一些关键点&#xff0c;帮助你理解数组名在什么情况下代表第一个元素&#xff0c;什么情…

前端江湖:从菜鸟到大侠的修炼手册

在这个数字编织的梦幻世界里&#xff0c;前端&#xff0c;这个听起来就带着几分仙气与神秘感的词汇&#xff0c;实则是每一位互联网探险家手中的魔法杖。它不仅连接着代码的冰冷逻辑与用户的炽热情感&#xff0c;更在无数次的点击与滑动间&#xff0c;绘制出一幅幅绚丽多彩的交…

智慧港口整体解决方案

1. 智慧港口概况与建设意义 智慧港口建设对创新驱动和转型发展具有重要推动作用&#xff0c;是港口发展的主要方向。它通过物联网、移动互联网、云计算、人工智能等高新技术与港口功能的融合&#xff0c;提升港口的智能化和信息化水平&#xff0c;对国家可持续发展具有重要意义…

一键将桌面资料存到d盘的工具,小巧、绿色、免费、免安装

为了提升我们的系统稳定性以及资料的安全性&#xff0c;建议大家将电脑桌面的资料默认路径设置为D盘或其他磁盘&#xff0c;这样不仅会减少系统盘的占用空间&#xff0c;在系统盘出现故障时我们还可以通过pe工具备份桌面的资料。虽然我们也可以通过一些操作来修改桌面文件以及我…

视频主题Qinmei 3.0视频站源码_WordPress影视视频主题/附详细安装教程

Qinmei 3.0主题主要是将 wordpress 改造成纯 api 的站点&#xff0c;以便实现前后端分离的技术栈&#xff0c;目前的进度已经大致完成&#xff0c;唯一的问题就是需要安装 JWT token 插件。 功能介绍&#xff1a; 支持豆瓣以及 bangumi 的一键获取信息, 豆瓣 api 目前使用的是…

科普文:分布式架构中的三高:高并发、高性能、高可用

关于高并发 高并发场景 互联网应用以及云计算的普及&#xff0c;使得架构设计和软件技术的关注点从如何实现复杂的业务逻 辑&#xff0c;转变为如何满足大量用户的高并发访问请求。 一个简单的计算处理过程&#xff0c;如果一旦面对大量的用户访问&#xff0c;整个技术挑战就…

Java1.0标准之重要特性及用法实例(十一)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 新书发布&#xff1a;《Android系统多媒体进阶实战》&#x1f680; 优质专栏&#xff1a; Audio工程师进阶系列…

aspeed 2600适配u-boot/kernel

1.说明 本文采取aspeed sdk v09.01版本来适配自己的实际的硬件开发平台。!!非采取qemu模拟方式!! 2.采用的镜像文件 2.1 采用网站编译好的镜像 采用网站: https://github.com/AspeedTech-BMC/openbmc/releases的文件: 1.ast2600-default-515-obmc.tar.gz.选择里面的文件ima…

【初阶数据结构篇】单链表的实现(赋源码)

文章目录 单链表的实现代码位置概念与结构概念&#xff1a;结构&#xff1a; 链表的性质链表的分类单链表的实现单链表的创建和打印及销毁单链表的创建单链表的打印单链表的销毁 单链表的插入单链表头插单链表尾插单链表在指定位置之前插入数据单链表在指定位置之后插入数据 单…