Python基础

发布于:2025-07-06 ⋅ 阅读:(19) ⋅ 点赞:(0)

1.标准输出

在 Python 中,标准输出使用 print 函数在控制台打印内容。print 默认会在末尾换行,如果想取消换行,可以使用参数 end=“”。

a = 10

# 输出:10
print(a)

# 串联输出(通过字符串拼接或逗号分隔)
# 输出:Hello, World!
print("Hello" + ", " + "World!")
# 使用 sep 指定分隔符
print("Hello", "World!", sep=", ")

s = "abc"
# 输出:abc 10
print(s, a)

# 格式化输出
# 输出:abc 10
print(f"{s} {a}")

2. 控制语句

Python 中的控制语句包括条件判断和循环,下面简单介绍一下。

条件判断 if, elif, else

a = 10

if a > 5:
    print("a > 5")
elif a == 5:
    print("a == 5")
else:
    print("a < 5")
# 输出:a > 5

循环 for / while

for 循环通常用于遍历可迭代对象或已知范围的序列,while 循环用于满足条件时反复执行代码块。

# 输出:0 1 2 3 4 
for i in range(5):
    print(i, end=" ")
print()

num = 100
# 输出:100 50 25 12 6 3 1 
while num > 0:
    print(num, end=" ")
    num //= 2
print()

基本数据结构

Python 提供了丰富的内置数据结构,如 list、deque、dict、set 等。以下是一些常用数据结构的介绍及其使用方法。

列表 list(动态数组)

list 是 Python 的可变序列类型,可以用作动态数组。
初始化方法:

# 初始化一个空列表
nums = []

# 初始化一个包含元素 1, 3, 5 的列表
nums = [1, 3, 5]

# 初始化大小为 n,元素都为0的列表
n = 10
nums = [0] * n

# 二维列表,m 行 n 列,元素都为 1
m, n = 3, 4
matrix = [[1] * n for _ in range(m)]

Python 列表的常用方法:

nums = [0] * 10

# 输出:False
print(len(nums) == 0)
# 输出:10
print(len(nums))

# 在列表尾部插入一个元素 20
nums.append(20)
# 输出:11
print(len(nums))

# 得到列表最后一个元素,输出:20
print(nums[-1])

# 删除列表的最后一个元素
nums.pop()
# 输出:10
print(len(nums))

# 索引访问与修改
nums[0] = 11
# 输出:11
print(nums[0])

# 在索引 3 处插入一个元素 99
nums.insert(3, 99)

# 删除索引 2 处的元素
nums.pop(2)

# 交换 nums[0] 和 nums[1]
nums[0], nums[1] = nums[1], nums[0]

# 遍历列表
# 输出示例:
# 0 11 99 0 0 0 0 0 0 0
for num in nums:
    print(num, end=" ")
print()

双端队列 deque

deque 是 collections 模块提供的双端队列,可以高效地在两端插入和删除元素。

from collections import deque

# 初始化双端队列
lst = deque([1, 2, 3, 4, 5])

# 检查是否为空,输出:False
print(len(lst) == 0)

# 获取大小,输出:5
print(len(lst))

# 在头部插入 0,尾部插入 6
lst.appendleft(0)
lst.append(6)

# 获取头部和尾部元素,输出:0 6
print(lst[0], lst[-1])

# 删除头部和尾部元素
lst.popleft()
lst.pop()

# 在索引 2 处插入 99
lst.insert(2, 99)

# 删除索引 1 处的元素
del lst[1]

# 遍历双端队列
# 输出:1 99 3 4 5
for val in lst:
    print(val, end=" ")
print()

队列 Queue

队列是一种操作受限制的数据结构:只允许在队尾插入元素,在队头删除元素。
Python 没有专门的队列类型,但可以使用 deque 来模拟队列,append 相当于入队,popleft 相当于出队。

from collections import deque

# 初始化队列
q = deque()

# 向队尾插入元素
q.append(10)
q.append(20)
q.append(30)

# 是否为空,输出:False
print(len(q) == 0)

# 大小,输出:3
print(len(q))

# 获取队头元素,不出队,输出:10
print(q[0])

# 队头元素出队
q.popleft()

# 新的队头元素,输出:20
print(q[0])

栈 Stack

虽然 Python 没有专门的栈类型,但可以使用 list 或 deque 来模拟栈。append 相当于压栈,pop 相当于出栈。

# 使用 list 作为栈
s = []

# 压栈
s.append(10)
s.append(20)
s.append(30)

# 是否为空,输出:False
print(len(s) == 0)

# 大小,输出:3
print(len(s))

# 栈顶元素,输出:30
print(s[-1])

# 出栈
s.pop()

# 新的栈顶元素,输出:20
print(s[-1])

字典 dict(哈希表)

dict 是 Python 的哈希表实现,通过键值对存储数据,查找、插入和删除操作平均时间复杂度为 O(1)。

# 初始化字典
hashmap = {1: "one", 2: "two", 3: "three"}

# 是否为空,输出:False
print(len(hashmap) == 0)

# 大小,输出:3
print(len(hashmap))

# 查找键
# 输出:Key 2 -> two
if 2 in hashmap:
    print(f"Key 2 -> {hashmap[2]}")
else:
    print("Key 2 not found.")

# 获取键对应的值,不存在则返回 None
# 输出:None
print(hashmap.get(4))

# 插入新键值对
hashmap[4] = "four"

# 获取新插入的值,输出:four
print(hashmap[4])

# 删除键 3
del hashmap[3]

# 检查删除后
if 3 in hashmap:
    print(f"Key 3 -> {hashmap[3]}")
else:
    print("Key 3 not found.")
# 输出:Key 3 not found.

# 遍历字典
# 输出:
# 1 -> one
# 2 -> two
# 4 -> four
for k, v in hashmap.items():
    print(f"{k} -> {v}")

集合 set(哈希集合)

set 是 Python 的哈希集合,用于存储不重复元素,常用于去重和快速查询元素是否存在。

# 初始化集合
hashset = {1, 2, 3, 4}

# 是否为空,输出:False
print(len(hashset) == 0)

# 大小,输出:4
print(len(hashset))

# 查找元素
if 3 in hashset:
    print("Element 3 found.")
else:
    print("Element 3 not found.")
# 输出:Element 3 found.

# 插入新元素
hashset.add(5)

# 删除元素 2
hashset.discard(2)  # discard 不存在的元素不会报错

# 检查删除后
if 2 in hashset:
    print("Element 2 found.")
else:
    print("Element 2 not found.")
# 输出:Element 2 not found.

# 遍历集合,输出:
# 1
# 3
# 4
# 5
for element in hashset:
    print(element)

以上是python的基础知识,利用上面就可以刷题了。


网站公告

今日签到

点亮在社区的每一天
去签到