i2 = i(同一地址)

在 Python 中,i2 = i 这种赋值方式会使 i2i 指向同一个对象,因此它们的内存地址是相同的。也就是说,i2i 是同一个对象的两个引用。

示例代码

对于不可变对象(如整数、字符串、元组等),这种赋值方式不会引起问题,因为这些对象不能被修改。

但是,对于可变对象(如列表、字典等),这种赋值方式会导致两个变量指向同一个对象,修改其中一个变量会影响到另一个变量。

示例代码

不可变对象(整数)

可变对象(列表)

Tip

那么如何把i的值赋给i2而不同一地址呢?

i2 = i + 0

 

 

整除用//

 

int(input())

在 Python 中,input() 函数用于从标准输入(通常是键盘)读取一行输入,并返回一个字符串。无论用户输入的是什么内容,input() 函数都会将其作为字符串返回。

示例

user_input = input("请输入一些内容: ")

print(type(user_input)) # 输出: <class 'str'>

print(user_input) # 输出用户输入的内容

 

map()

在 Python 中,map() 函数用于将一个函数应用到一个或多个可迭代对象(如列表、元组等)的每一个元素,并返回一个迭代器。map() 函数的语法如下:

语法

 

list()

在 Python 中,list() 是一个内置函数,用于将一个可迭代对象转换为列表。它可以接受任何类型的可迭代对象作为参数,并返回一个包含该可迭代对象所有元素的新列表。

语法

返回值

list() 函数返回一个新的列表,包含了可迭代对象中的所有元素。

 

sorted()

在 Python 中,sorted() 函数用于对可迭代对象进行排序,并返回一个新的列表。sorted() 函数的语法如下:

语法

返回值

sorted() 函数返回一个新的列表,包含排序后的元素。

 

range()

在 Python 中,range() 函数返回一个不可变的序列对象,该对象生成一系列数字。range() 函数通常用于循环中,以生成一系列数字进行迭代。

语法

返回值

range() 函数返回一个 range 对象,该对象是一个不可变的序列类型,可以用于迭代。

 

enumerate()

在 Python 中,enumerate() 函数用于将一个可迭代对象(如列表、元组或字符串)组合为一个索引序列,同时返回包含索引和值的元组。enumerate() 函数的语法如下:

语法

返回值

enumerate() 函数返回一个枚举对象,该对象是一个包含索引和值的元组的迭代器。

示例

示例 1:基本用法

 

python中的推导式

什么是推导式

推导式comprehensions(又称解析式),是Python的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。 共有三种推导,在Python2和Python3中都有支持:

 

isdigit()

在 Python 中,可以使用字符串对象的 isdigit() 方法来判断一个字符是否为数字。isdigit() 方法返回一个布尔值,如果字符是数字字符,则返回 True,否则返回 False

示例

以下是一些示例代码,展示了如何使用 isdigit() 方法判断一个字符是否为数字:

传参和函数内赋值

在你的代码中,L 传递给函数后变成 None 的原因是因为在 shulu 函数中,你重新赋值了 L,而不是修改传入的列表。Python 中的参数传递是通过引用传递的,但当你在函数内部重新赋值 L 时,它不再指向原来的列表。

Note

引用是让一个另一个变量指向原本变量的地址吗?

是的,在 Python 中,引用意味着一个变量指向另一个变量的内存地址。对于可变类型(如列表、字典、集合等),当你将一个变量赋值给另一个变量时,两个变量实际上指向同一个内存地址。因此,对其中一个变量的修改会影响另一个变量。

不要随便赋值!!!

 

join()

join 函数是 Python 字符串对象的一个方法,用于将一个可迭代对象(如列表、元组等)中的元素连接成一个字符串,并在每个元素之间插入指定的分隔符。join 方法通常用于将多个字符串连接成一个字符串。

Caution

join()方法连接的迭代器中的数据必须是字符串。如果迭代器中的元素不是字符串类型,会引发 TypeError

示例

示例 1:连接列表中的字符串

示例 2:连接元组中的字符串

示例 3:连接字符串中的字符

 

全局变量

在 Python 中,可以通过在函数外部定义变量来创建全局变量。要在函数内部修改全局变量,需要使用 global 关键字。以下是一个示例,展示了如何定义和使用全局变量:

2n皇后问题

深度优先搜索整个解空间即可

 

8345c6326c1b1b571020af27092b16e7_720

代码如下:

set()

 

lambda x : x[1]

lambda x: x[1] 是一个匿名函数(lambda 函数),它接受一个参数 x 并返回 x 的第二个元素(即索引为 1 的元素)。在 Python 中,lambda 函数通常用于需要一个简单函数的地方,尤其是在排序或过滤操作中。

示例解释

假设你有一个包含元组的列表,并且你想根据每个元组的第二个元素进行排序:

解释

  1. 数据

    • data 是一个包含元组的列表:[(1, 10), (2, 5), (3, 20)]

  2. 排序

  3. 结果

    • 排序后的列表是:[(2, 5), (1, 10), (3, 20)]

 

 

isalnum()

isalnum()方法用来判断字符串中是否只包含字母或数字,并且长度要大于0,满足的话就返回True,否则返回False。