二: 字典及函数的使用

1. 字典的使用

Python中的字典是以键值对的方式存储书籍,类似 json

Python中内置了 json 模块来处理json数据

python 复制代码
a = {"color": "yello", 'count': 2}
print(
    a['color'],
    a['count'],
)
# 新增数据
a['point'] = 12
print(a)

# 删除数据
del a['point']

输出: 
yello 2
{'color': 'yello', 'count': 2, 'point': 12}

我在同一个字典中同时使用了双引号和单引号,看起来没什么影响,但是最好统一你的代码格式

如果指定的键有可能不存在,应考虑使用方法 get() ,而不要使用方括号表示法(此时会报错).

使用 get() 方法时,如果没有传入默认值,则会在键不存在的时候返回 None

2. 字典的遍历

python 复制代码
a = {"color": "yello", 'count': 2}
items = a.items()
keys = a.keys()
values = a.values()
print(items)
print(keys)
print(values)
for key, value in items:
    print(key, value)

输出:
dict_items([('color', 'yello'), ('count', 2)])
dict_keys(['color', 'count'])
dict_values(['yello', 2])
color yello
count 2

通过对包含重复元素的列表调用 set() ,可让Python找出列表中独一无二的元素,并使用这些元素来创建一个集合

python 复制代码
a = {"color": "blue", 'count': 2, 'favorite_color': 'blue'}
for c in set(a.values()):
    print(c)

输出:
2
blue

可使用一对花括号直接创建集合,并在其中用逗号分隔元素

复制代码
a = {"blue", 'blue', 'yellow', 'red', 'blue'}
print(a)

输出:
{'blue', 'red', 'yellow'}

3. input() 函数

python 复制代码
message = input('please input something:')
print(message)

输出:
please input something:hello world
hello world

input() 函数返回的是字符串,如果需要使用数值的话,可以使用 int() 函数将输入值转成数值

4. 函数

函数是带名字的代码块

4.1 定义函数

python 复制代码
def greet_user():
    print("Hello World")


greet_user()

输出:
Hello World

函数的参数可以通过多种形式进行传递

python 复制代码
def greet_user(name, age=6):
    print("Hello %s,you are %d." % (name, age))


# 按顺序传参
greet_user('Tom', 12)
# 按参数名关键字传参
greet_user(name='Jim', age=18)
# 使用默认参数
greet_user('Harry')


输出:
Hello Tom,you are 12.
Hello Jim,you are 18.
Hello Harry,you are 6.

4.2 可变参数

  1. 元组形式的可变参数
python 复制代码
def greet_user(*names):
    print(names)


greet_user('Tom', 'Jerry', 'Teed')

输出:
('Tom', 'Jerry', 'Teed')

形参名 *names 中的星号让Python创建一个名为 names 的空元组,并将收到的所有值都封装到这个元组中

  1. 字典形式的可变参数
python 复制代码
def greet_user(name, **user_info):
    print('Hello,', name)
    for key, value in user_info.items():
        print(key, '=', value)


greet_user('Tom', age=15, color='red', language='python')

输出:
Hello, Tom
age = 15
color = red
language = python

4.3 模块导入

模块 是扩展名为.py的文件,包含要导入到程序中的代码

  1. 导入整个模块
python 复制代码
import module_name

# 调用模块中的函数
module_name.function_name()
  1. 导入特定函数
python 复制代码
from module_name import function_name
from module_name import function_0, function_1, function_2
# 为导入的函数设置 别名, 与本模块中的函数名进行区分
from pizza import make_pizza as mp
# 为模块设置 别名
import pizza as p
# 导入模块中所有函数
from pizza import *

导入时我们尽量只导入我们用到的函数,保持代码组织简洁

相关推荐
一个无名的炼丹师10 分钟前
多模态RAG系统进阶:从零掌握olmOCR与MinerU的部署与应用
python·大模型·ocr·多模态·rag
u01092727125 分钟前
使用XGBoost赢得Kaggle比赛
jvm·数据库·python
MediaTea31 分钟前
<span class=“js_title_inner“>Python:实例对象</span>
开发语言·前端·javascript·python·ecmascript
feasibility.1 小时前
多模态模型Qwen3-VL在Llama-Factory中断LoRA微调训练+测试+导出+部署全流程--以具身智能数据集open-eqa为例
人工智能·python·大模型·nlp·llama·多模态·具身智能
我需要一个支点1 小时前
douyin无水印视频下载
爬虫·python
喵手1 小时前
Python爬虫实战:采集各大会展平台的展会名称、举办时间、展馆地点、主办方、行业分类等结构化数据(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集大会展平台信息·展会名称举办时间展馆地址·采集数据csv/json导出
编码者卢布1 小时前
【Azure APIM】如何实现对经过APIM并到达后端服务请求的全链路追踪呢?
python·flask·azure
0思必得01 小时前
[Web自动化] Selenium执行JavaScript语句
前端·javascript·爬虫·python·selenium·自动化
焱童鞋1 小时前
解决 MeteoInfoLab 3.9.11 中 contourfm 导致的 ArrayIndexOutOfBoundsException
开发语言·python
封奚泽优1 小时前
化学配对记忆游戏:用Python和Pygame打造趣味化学学习工具
python·pygame