Python零基础学习6.1—Python组合数据类型(一)

这篇具有很好参考价值的文章主要介绍了Python零基础学习6.1—Python组合数据类型(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

组合数据类型可以将多个数据组织起来,根据数据组织方式的不同,Python的组合数据类型可分成三类:序列类型、集合类型和映射类型,如图所示。

Python零基础学习6.1—Python组合数据类型(一),Python零基础学习,python,学习,开发语言

本章先来讲解元组和列表,我们应至少掌握以下几点:

掌握列表的创建、访问、增加与删除等基本操作

掌握元组的创建、访问等基本操作

掌握列表的应用

掌握元组的应用

下面我们通过几道题来了解和巩固:

第1关:列表的创建与访问

任务描述

本关任务:

(1)创建一个计算机语言列表langlist,包含4个成员,分别为"python"、"java"、"c"、"c++"。

(2)利用函数法创建列表strlist,列表成员为字符串"python"中的每个字符。

(3)利用函数法创建一个[1,10]范围内的偶数列表evenlist

(4)输出列表langlist最后一个元素

(5)输出列表langlist第2个元素中的第1个字符

(6)输出列表strlist第3个元素

(7)输出列表evenlist中的每一个元素,同一行输出,元素之间以空格分隔。

代码解析

langlist = ["python","java","c","c++"]
strlist = list(langlist[0])
evenlist = [i for i in range(2,11,2)]
print(langlist[-1])
str_langlist = str(langlist[1])
print(str_langlist[0])
print(strlist[2])
for x in evenlist:
    print(x,end = " ")

第2关:列表的切片

任务描述

本关任务: 键盘输入长度大于5的字符串,将它转换成列表。对该列表依次进行以下切片操作:

(1)切片取列表前三个元素

(2)切片取列表后三个元素

(3)切片逆序输出

(4)切片在列表头部增加元素"head"

(5)计算列表的元素个数 逐行输出以上五个操作的结果。

测试说明

平台会对你编写的代码进行测试:

测试输入: 请输入长度大于5的字符串:abcdef

预期输出:

['a', 'b', 'c']

['d', 'e', 'f']

['f', 'e', 'd', 'c', 'b', 'a']

['head', 'a', 'b', 'c', 'd', 'e', 'f']

7

代码解析

string = input("请输入长度大于5的字符串:")
string = list(string)
print(string[:3])
print(string[-3:])
print(string[::-1])
string.insert(0,'head')
print(string)
print(len(string))

第3关:列表元素的增加与删除

任务描述

本关任务:从键盘输入一列表,进行以下操作:

(1)在该列表尾部添加元素“best”

(2)同时添加三个元素“3”、“2”、“1”

(3)在第2个元素之前插入新的元素“grade”

(4)删除第3个元素 逐行依次输出以上每个操作后的列表

测试说明

平台会对你编写的代码进行测试:

测试输入: 请输入一个列表:[12,34,56]

预期输出:

[12, 34, 56, 'best']

[12, 34, 56, 'best', '3', '2', '1']

[12, 'grade', 34, 56, 'best', '3', '2', '1']

[12, 'grade', 56, 'best', '3', '2', '1']

代码解析

lst = eval(input("请输入一个列表:"))
lst.append('best')
print(lst)
lst.extend(['3','2','1'])
print(lst)
lst.insert(1,'grade')
print(lst)
lst.pop(2)
print(lst)

第4关:等比数列

任务描述

本关任务:产生等比数列 用户输入以逗号分隔的三个数字,记为a、q、n,以a为起始数值,q为前后相邻数的比值,n为数列长度,产生一个等比数列。

输入:1,3,5

输出:1,3, 9 ,27, 81

测试说明

平台会对你编写的代码进行测试:

测试输入: 请输入三个数字,英文逗号分隔:1,3,5

预期输出: 1,3,9,27,81

代码解析

num = input("请输入三个数字,英文逗号分隔:")
num = num.split(",")
a = eval(num[0])
q = eval(num[1])
n = eval(num[2])
lst = [str(a*q**(i-1))for i in range(1,n+1)]
print(",".join(lst))

第5关:等差数列

任务描述

本关任务:等差数列 用户输入以空格分隔的3个整数,分别记为a、b、c,以a为起始数值,b为前后相邻数的差,c为数列长度,产生一个递增的等差数列。输出数列、数列元素之和、数列元素索引与值、数列元素平方

测试说明

平台会对你编写的代码进行测试:

测试输入:

请输入三个数,以空格分隔:1 2 5

预期输出:

等差数列为[1, 3, 5, 7, 9]

数列之和为25 数列元素索引与值为[(0, 1), (1, 3), (2, 5), (3, 7), (4, 9)]

数列元素的平方为[1, 9, 25, 49, 81]

代码解析

num = input("请输入三个数,以空格分隔:")
num = num.split()
a = eval(num[0])
b = eval(num[1])
c = eval(num[2])
lst = [a+b*i for i in range(c)]
print(f"等差数列为{lst}")
s = 0
for x in lst:
    s += x
print(f"数列之和为{s}")
lst1 = []
for i in range(c):
    lst1.append((i,lst[i]))
print(f"数列元素索引与值为{lst1}")
lst2 = [lst[i]**2 for i in range(c)]
print(f"数列元素的平方为{lst2}")

第6关:数字转换

任务描述

本关任务: 输入一个数,将其转换成中文数字输出。

例如, 输入:123.45

输出:壹贰叁点肆伍

测试说明

平台会对你编写的代码进行测试:

测试输入: 请输入一个数:123.4

预期输出: 壹贰叁点肆

代码解析

num = input("请输入一个数:")
num_dict = {".":"点","0":"零","1":"壹","2":"贰","3":"叁","4":"肆","5":"伍","6":"陆","7":"柒","8":"捌","9":"玖"}
num_list = list(num)
for x in num_list:
    print(num_dict[x],end = "")

第7关:数列排序

任务描述

本关任务:生成包含 10 个1到100的随机整数的列表,将前5个数按升序排列,后5个数按降序排列。

测试说明

平台会对你编写的代码进行测试:

测试输入:

随机数种子:4

预期输出:

随机生成列表[31, 39, 14, 93, 51, 62, 20, 12, 9, 3]

排序后列表[14, 31, 39, 51, 93, 62, 20, 12, 9, 3]

代码解析

import random
n=eval(input("随机数种子:"))
random.seed(n)
#**************Begin***************#
#从此外开始添加代码
x = list(random.randint(1,100) for i in range(10))
print(f"随机生成列表{x}")
lst1 = x[:5]
lst2 = x[5:]
lst1.sort()
lst2.sort()
print(f"排序后列表{lst1+lst2[::-1]}")
#***************End****************#

第8关:计算歌手成绩

任务描述

本关任务: 在歌星大赛中,有若干个评委为某歌手打分。歌手的最后成绩为:去掉一个最高分和一个最低分后的平均值,保留2位小数。 请输出歌手的最后成绩、去掉的最高分和去掉的最低分,并将歌手的最后得分从高到低输出在同一行上。

测试说明

平台会对你编写的代码进行测试:

测试输入:

请输入评委成绩,以英文逗号分隔82,94,89,90,97,88,97,81,86,82,90,83

预期输出:

歌手最后成绩88.10

去掉一个最高分97

去掉一个最低分81

歌手的最后分数从高到低依次为97 94 90 90 89 88 86 83 82 82

代码解析

grand = input("请输入评委成绩,以英文逗号分隔")
lst = grand.split(",")
lst = [int(x) for x in lst] 
best = max(lst)
worst = min(lst)
s = sum(lst)-best-worst
ave = s/(len(lst)-2)
print("歌手最后成绩{:.2f}".format(ave))
print(f"去掉一个最高分{best}")
print(f"去掉一个最低分{worst}")
print("歌手的最后分数从高到低依次为",end = "")
lst.sort()
lst = lst[::-1]
lst.remove(best)
lst.remove(worst)
for x in lst:
    print(f"{x}",end = " ")

第9关:随机密码

任务描述

本关任务:编写程序,在26个字母大小写(AaBbCc……Zz)、10个数字字符(0123456789)和10个特殊字符“~!@#$%^&*?”组成的列表中随机生成 1个8位数密码。

测试说明

平台会对你编写的代码进行测试:

测试输入: 随机种子:9

预期输出: 随机密码:7xRilAv@文章来源地址https://www.toymoban.com/news/detail-753970.html

代码解析

#根据注释在相应位置添加代码
#导入随机库
import random
#给列表赋初值
lst=[]
#给列表分别添加26个大写字母和26个小写字母
for i in range(65,91):
    lst.append(chr(i))
    lst.append(chr(i+32))
#给列表添加10个数字
for i in range(10):
    lst.append(str(i))
#给列表添加特殊字符
spe = "~!@#$%^&*?"
lst.extend(list(spe))
#定义随机数的种子,不删除下面两行代码
n=eval(input("随机种子:"))
random.seed(n)
#从列表中随机抽样8个字符,并输出
password = ""
for i in range(8):
    password += random.choice(lst)
print(f"随机密码:{password}")

到了这里,关于Python零基础学习6.1—Python组合数据类型(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python学习笔记_基础篇(三)_数据类型之列表

    一.基本数据类型 整数:int 字符串:str(注:t等于一个tab键) 布尔值: bool 列表:list (元素的集合) 列表用[] 元祖:tuple 元祖用() 字典:dict 注:所有的数据类型都存在想对应的类列里 二.列表所有数据类型: 基本操作: 索引 切片 追加 删除 长度 切片 循环 包含 list 三

    2024年02月12日
    浏览(45)
  • [Python物联网]Python基础知识和语法--变量和数据类型--Python快速上手开发物联网上位机程序

    目录 一、前言 二、Python变量 三、Python数据类型         1.数值类型         2.字符串类型         3.列表类型         4.元组类型         5.字典类型         6.数据类型转换         当你开始学习Python编程语言时,第一步就是了解 变量和数据类型 。变量是存储

    2024年02月04日
    浏览(58)
  • 【Python 基础篇】Python 变量与数据类型以及数据类型转换

    Python 是一种广泛应用于各个领域的高级编程语言,其灵活性和易用性使其成为众多开发者的首选。在 Python 中,变量是程序中存储数据的基本单元,而数据类型定义了变量可以存储的数据种类。此外,Python 还提供了数据类型转换的功能,可以在需要时将数据从一种类型转换为

    2024年02月10日
    浏览(49)
  • 【Python入门篇】——Python基础语法(数据类型与数据类型转换)

    作者简介: 辭七七,目前大一,正在学习C/C++,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: Python入门,本专栏主要内容为Python的基础语法,Python中的选择循环语句,Python函数,Python的数据容器等。 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 数据类型 在学习字

    2024年02月02日
    浏览(45)
  • 【python基础】基本数据类型-数字类型

    视频讲解 数字类型 Python3 支持int(整型数据)、float(浮点型数据)、bool(布尔类型) 在Python 3里, 只有一种整数类型 int,表示为长整型 。像大多数语言一样,数值类型的赋值和计算都是很直观的。 编写程序如下所示: 这里需要注意的是 数值的除法运算,包含两个运算符:/ 返回

    2024年02月06日
    浏览(44)
  • 【Python基础】- 基础数据类型(上)

       🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 目录 ​编辑 最基本内置数据类型 Number 数字类型 数字和基本运算符 增强型赋值运算符

    2024年02月07日
    浏览(35)
  • 【Python基础】- 基础数据类型(下)

       🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 上文我们介绍了Python基础数据类型中的数字、布尔、字符串类型,今天主要介绍列表、元

    2024年02月09日
    浏览(34)
  • 【Python数据类型-元组】------- PYTHON基础11

    元组与列表类似。 元组的列表最大区别是: 元组的元素是不可被修改,添加,和删除的。 元组使用 小括号 定义,而列表使用中括号定义。 输出 输出 3.1. 列表转为元组,通过内置函数tuple()实现,比如: 输出 3.2. 元组转为列表,通过内置函数list()实现 输出 4.1. 元组更新:构

    2024年02月04日
    浏览(46)
  • python爬虫_python基础数据类型

    大家好,我是yma16,本文分享关于python的基础数据类型,作为python爬虫专栏的基石。 发展历史: Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。 Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Alg

    2024年02月11日
    浏览(31)
  • 【Python数据类型-字典】------- PYTHON基础12

    字典(Dictionary)指一种可变的容器,这个容器可以存储任意类型的数据。 字典里的每个元素为一个键值对, 键值对 格式如下: key : value key 被称为键值,它在字典中的值是唯一的(不能重复)。 value 被称为值,它在字典中可以不唯一(可以重复)。 每个键值对用英文冒号

    2024年02月04日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包