实验目标

本实验的主要目标是熟悉Python中字典、集合、字符串的创建和操作,包括字典的创建、访问、修改和合并,集合的创建、访问以及各种集合运算,以及字符串的创建、格式化和常用操作。

实验要求

通过编写Python代码,验证以下要求:

  1. 熟悉Python字典的创建、访问、修改、合并。
  2. 熟悉Python集合的创建、访问、以及各种集合运算。
  3. 熟悉Python字符串的创建、格式化、常用操作。

实验内容

1. Python字典的操作

首先,我们将研究Python字典的创建、访问、修改和合并。

字典的创建

# 创建一个字典
my_dict = {
"name": "John",
"age": 30,
"city": "New York"
}

字典的访问

# 访问字典中的值
name = my_dict["name"]
age = my_dict["age"]
print(f"Name: {name}, Age: {age}")

字典的修改

# 修改字典中的值
my_dict["age"] = 31
print(f"Updated Age: {my_dict['age']}")

字典的合并

# 合并两个字典
dict1 = {"a": 1, "b": 2}
dict2 = {"b": 3, "c": 4}
merged_dict = {**dict1, **dict2}
print("Merged Dictionary:", merged_dict)
#键和值合并为字典
keys = ['a','b','c']
values = [1,2,3]
merged_dict = dict(zip(keys, values))
print("Merged Dictionary:", merged_dict)

2. Python集合的操作

接下来,我们将研究Python集合的创建、访问以及各种集合运算。

集合的创建

# 创建一个集合
my_set = {1, 2, 3, 4, 5}

集合运算

# 集合运算示例
set1 = {1, 2, 3, 4, 5}
set2 = {3, 4, 5, 6, 7} # 并集
union_set = set1.union(set2)
print("Union Set:", union_set)
print("Union Set:", set1 | set2) # 交集
intersection_set = set1.intersection(set2)
print("Intersection Set:", intersection_set)
print("Intersection Set:", set1 & set2) # 差集
difference_set = set1.difference(set2)
print("Difference Set:", difference_set)
print("Difference Set:", set1 - set2)

3. Python字符串的操作

最后,我们将研究Python字符串的创建、格式化和常用操作。

字符串的创建

# 创建一个字符串
my_string = "Hello, World!"

字符串的格式化

以下是三种常见的字符串格式化方式:%d%c%s

  1. %d:用于整数格式化

    • %d 用于插入整数值到字符串中。例如,您可以将整数变量插入到字符串中以生成动态文本。

    示例:

    age = 30
    message = "My age is %d years old." % age
    print(message)

    输出:

    My age is 30 years old.
  2. %c:用于字符格式化

    • %c 用于插入单个字符到字符串中。这通常与字符变量一起使用。

    示例:

    initial = 'A'
    message = "My name starts with the letter %c." % initial
    print(message)

    输出:

    My name starts with the letter A.
  3. %s:用于字符串格式化

    • %s 用于插入字符串到字符串中。这是一种通用的字符串插值方式,可以用于字符串以及其他数据类型的格式化。

    示例:

    name = "Alice"
    greeting = "Hello, %s!" % name
    print(greeting)

    输出:

    Hello, Alice!

Python 3.6及更高版本还支持更现代的f-strings,它们提供了更简洁和直观的方式来格式化字符串,但上述的%d%c%s 仍然是常见且有效的方式。

# 字符串格式化
name = "Alice"
age = 25
formatted_string = f"My name is {name} and I am {age} years old."
print(formatted_string)

常用字符串操作

# 常用字符串操作
original_string = "This is a sample string." # 字符串长度
length = len(original_string)
print("String Length:", length) # 字符串分割
split_string = original_string.split(" ")
print("Split String:", split_string) # 字符串替换
new_string = original_string.replace("sample", "modified")
print("Replaced String:", new_string)

结论

通过本实验,我们成功熟悉了Python字典、集合和字符串的创建和操作。这些基本概念和技能在Python编程中非常重要,将有助于我们更好地处理数据和文本处理任务。

实验四报告: 熟悉Python字典、集合、字符串的使用的更多相关文章

  1. 20184302 2019-2020-2 《Python程序设计》实验四报告

    20184302 2019-2020-2 <Python程序设计>实验四报告 课程:<Python程序设计> 班级: 1843 姓名: 李新锐 学号:184302 实验教师:王 ...

  2. 20192305 王梓全Python程序设计实验四报告

    20192305 王梓全Python程序设计实验四报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年6月 ...

  3. 20192204 2019-2020-2 《Python程序设计》实验四报告

    20192204 2019-2020-2 <Python程序设计>实验四报告 课程:<Python程序设计> 班级: 1922 姓名: 李龙威 学号:20192204 实验教师 ...

  4. 20145204&20145212信息安全系统实验四报告

    20145204信息安全设计基础实验四报告 博客链接:信息安全设计基础实验

  5. 20201123 《python程序设计》实验四报告

    20201123 2020-2021-2 <python程序设计>实验三报告 课程:<Python程序设计>班级:2011姓名:晏鹏捷学号:20201123实验教师:王志强实验 ...

  6. python字典、字符串(json串)、字节串之间的转化

    字典和json字符串(本质也是字符串)之间的转化用json.dumps和json.loads() json.dumps():   字典→json字符串 json.loads():     json字符 ...

  7. 20145302张薇《Java程序设计》实验四报告

    20145325张薇 实验四:Andoid开发基础 实验内容 使用 Android Studio 设计"Hello" 设计过程 首先创建项目 选择.xml中的`Design 选中W ...

  8. 20212115朱时鸿 《python程序设计》实验四报告

    课程:<Python程序设计>班级: 2121姓名: 朱时鸿学号:20212115实验教师:王志强实验日期:2022年5月28日必修/选修: 公选课 1.实验内容 Python综合应用:爬 ...

  9. 20204107 孙嘉临 《PYTHON程序设计》实验四报告

    课程:<Python程序设计>班级: 2041姓名: 孙嘉临学号: 20204107实验教师:王志强实验日期:2020年6月29日必修/选修: 公选课 ##作为一个轻度游戏玩家,当然是要写 ...

  10. python -- 字典 集合

    1.字典          定义:字典是以 key :value 的形式来保存数据,用{} 来表示,存储的是 key : value        查找效率比较高(注:字典存储数据时,用的是hash值 ...

随机推荐

  1. Linux下ElasticSearch及IK分词插件安装

    ElasticSearch及IK分词插件相关安装 一. 简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口. ...

  2. 【C#/.NET】探究Task中ConfigureAwait方法

    ​  目录 引言 ConfigureAwait方法的作用和原理 ConfigureAwait方法的使用场景 非UI线程场景 避免上下文切换 避免死锁 ConfigureAwait方法的注意事项 在UI ...

  3. Python copy & deeocopy 探究

    简单来说,copy 复制创建新的容器,而引用容器内元素的地址不变.而 deepcopy 也对容器内的容器元素进行复制. 但是这种复制具体是什么体现呢?是否只是对第一层容器元素进行了复制?写了一段代码验 ...

  4. 配置k8s拉取Harbor镜像

    创建Secret # 认证名称为:docker-harbor-registry kubectl create secret docker-registry docker-harbor-registry ...

  5. java发送http请求(jquery发送http请求,前后端看这一篇文章够了,很完整)

    为什么写这篇博客? 1.目前很多系统使用了微服务架构,那么各个微服务之间进行内部通信一般采用http协议的方式,springcloud中提供了ribbon,feign,openFeign等组件. 但是 ...

  6. js的一些小问题集合

    1.等于号的应用 function reverse(){ var checkbox = document.getElementsByName("hobby"); for (let ...

  7. 【高并发】SimpleDateFormat类到底为啥不是线程安全的?(附六种解决方案,建议收藏)

    大家好,我是冰河~~ 首先问下大家:你使用的SimpleDateFormat类还安全吗?为什么说SimpleDateFormat类不是线程安全的?带着问题从本文中寻求答案. 提起SimpleDateF ...

  8. java反射newInstance()带删除线的问题

    从java9开始,newInstance()方法不建议使用导致idea自动画了条删除横线 解决方法: //改用getDeclaredConstructor().newInstance() Object ...

  9. 【算法】编写一个函数,返回两个正数的和,有可能超过ulong长度

    编写一个函数,返回两个数字的和.输入数字是字符串,函数必须返回一个字符串. 示例: 添加("123","321"):->"444" 添 ...

  10. 2023NepCTF-RE部分题解

    2023NepCTF-RE部分题解 九龙拉棺 过反调试 很容易发现 void __stdcall sub_401700() 里面有tea的痕迹 接出来发现只是前半部分 #include <std ...