首页 > 其他分享 >第四章 序列的应用

第四章 序列的应用

时间:2022-10-10 22:44:13浏览次数:52  
标签:输出 item 列表 print 文件 应用 序列 sign 第四章

实例01:输出每日一帖

   在IDLE中创建一个名称为tips.py 的文件,然后在该文件中导入日期时间类,然后定义一个列表(保存7条励志文字作为每日一帖的内容),再获取当前的星期,最后将当前的星期作为列表的索引,输出元素内容。

print("")import datetime         #导入日期时间类
#定义一个列表
mot = ["今天星期一:\n坚持下去不是因为我很坚强,而是因为我别无选择。",
       "今天星期二:\n含泪播种的人一定能笑着收获。",
       "今天星期三:\n做对的事情比把事情做对重要。",
       "今天星期四:\n命运给予我们的不是失望之酒,而是机会之杯",
       "今天星期五:\n不要等到明天,明天太遥远,今天就行动。",
       "今天星期六:\n求知若饥,虚心若愚。",
       "今天星期日:\n成功将属于那些从不说”不可能“的人。"]
day=datetime.datetime.now().weekday()   #获取当前星期
print(mot[day])                         #输出每日一帖

 

 

实例02:分两列显示2017~2018赛季NBA西部联盟前八名的球队

        在IDLE中创建一个名称为printteam.py 的文件,并且在该文件中先输出标题,然后定义一个列表(保存球队名称),再应用for循环和 enumerate()函数遍历列表,在循环体中通过if…else语句判断是否为偶数,如果为偶数则不换行输出,否则换行输出。

print("2017~2018赛季NBA西部联盟前八名\n")
team = ["火箭", "勇士", "开拓者", "雷霆", "爵士", "鹈鹕", "马刺", "森林狼"]
for index,item in enumerate(team):
    if index % 2 == 0:          #索引为偶数则不换行输出
        print(item + "\t\t", end='')
    else:
        print(item + "\n")

 


实例03:向NBA名人堂列表中追加2018年新加入的球星

  在IDLE中创建一个名称为nba.py 的文件,然后在该文件中定义一个保存NBA名人堂原有球星名字的列表,然后创建一个保存2018年新进入球星名字的列表,再调用列表对象的 extend()方法追加元素,最后输出追加元素后的列表。

#NBA名人堂原有人员
oldlist = ["迈克尔·乔丹","卡里姆·阿布杜尔·贾巴尔","哈利姆·奥拉朱旺","查尔斯·巴克利","姚明"]
newlist = ["贾森·基德","史蒂夫·纳什","格兰特·希尔"]
oldlist.extend(newlist)
print(oldlist)

 

 

实例04:使用二维列表输出不同版式的古诗

        在 IDLE中创建一个名称为printverse.py的文件,然后在该文件中首先定义4个字符串,内容为柳宗元的《江雪》中的诗句,并定义一个二维列表,然后应用嵌套的for循环将古诗以横版方式输出,再将二维列表进行逆序排列,最后应用嵌套的for循环将古诗以竖版方式输出,代码如下:

str1="千山鸟飞绝"
str2="万径人踪灭"
str3="孤舟蓑笠翁"
str4="独钓寒江雪"
verse = [list(str1), list(str2), list(str3), list(str4) ]    #定义一个二维列表
print("\n--横版--\n")
for i in range(4):
    for j in range(5):
        if j ==4:
            print(verse[i][j])
        else:
            print(verse[i][j], end="")
verse.reverse()                                         #对列表进行逆序排列
print("\n--竖版--\n")
for i in range(5):
    for j in range(4):
        if j ==3:
            print(verse[j][i])
        else:
            print(verse[j][i], end='')

 

 

实例05:使用元组保存咖啡馆里提供的咖啡名称

        在IDLE中创建一个名称为cafe_coffecname.py 的文件,然后在该文件中定义一个包含6个元素的元组,内容为伊米咖啡馆里的咖啡名称,并且输出该元组。

#定义元组
coffeename=('蓝山','卡布奇诺','曼特宁','摩卡','麝香猫','哥伦比亚')
#输出元组
print(coffeename)

 

 

实例06:使用for循环列出咖啡馆里的咖啡名称

  在IDLE中创建一个名称为cafe_coffeename.py 的文件,然后在该文件中,定义一个包含6个元素的元组,内容为伊米咖啡馆里的咖啡名称,然后应用for循环语句输出每个元组元素的值,即咖啡名称,并且在后面加上“咖啡”二字。

coffeename=('蓝山','卡布奇诺','曼特宁','摩卡','麝香猫','哥伦比亚')
print("你好,欢迎光临~lunckin咖啡管~\n\n我店有:\n")
for name in coffeename:                                         #遍历元组
    print(name + "咖啡",end=" ")

 

 

实例07:分两列显示2017-2018赛季NBA西部联盟前八名球队

  本实例将在实例02的基础上进行修改,将列表修改为元组,其他内容不变。

print("2017~2018赛季NBA西部联盟前八名\n")
team = ("火箭", "勇士", "开拓者", "雷霆", "爵士", "鹈鹕", "马刺", "森林狼")
for index,item in enumerate(team):
    if index % 2 == 0:          #索引为偶数则不换行输出
        print(item + "\t\t", end='')
    else:
        print(item + "\n")

 

实例08:将麝香猫咖啡替换为拿铁咖啡

        在 IDLE中创建一个名称为cafe_replace.py 的文件,然后在该文件中,定义一个包含6个元素的元组,内容为伊米咖啡馆里的咖啡名称,然后修改其中的第5个元素的内容为“拿铁”。

coffeename = ('蓝山','卡布奇诺','曼特宁','摩卡','麝香猫','哥伦比亚')  #定义元组
coffeename = ('蓝山','卡布奇诺','曼特宁','摩卡','拿铁','哥伦比亚')
print(coffeename)

 

实例09:创建一个保存女神星座的字典

 在IDLE中创建一个名称为sign_create.py 的文件,然后在该文件中,定义两个包括4个元素的列表,再应用dict()函数和zip()函数将前两个列表转换为对应的字典,并且输出该字典。

name =['绮梦','冷伊一','香凝','黛兰']          #作为健的列表
sign =['水瓶座','射手座','双鱼座','双子座']     #作为值的列表
dictionary = dict(zip(name, sign))
print(dictionary)

 

 

实例10:根据星座测试性格特点

   在IDLE中创建一个名称为sign _get.py 的文件,然后在该文件中创建两个字典,一个保存名字和星座,另一个保存星座和性格特点,最后从这两个字典中取出相应的信息组合出想要的结果,并输出。

name =['绮梦','冷伊一','香凝','黛兰']                  #作为键的列表
sign_person =['水瓶座','射手座','双鱼座','双子座']      #作为值的列表
person_dict = dict(zip(name, sign_person))          #转换位个人字典
sign_all =['白羊座','金牛座','双子座','巨蟹座','狮子座',
           '处女座','天秤座','天蝎座','射手座','摩羯座','水瓶座','双鱼座']
nature = ['有一种让人看见就觉得开心的感觉,阳光、乐观、坚强,性格直来直去,就是有点小脾气。',
          '很保守,喜欢稳定,一旦有什么变动就会觉得心里不踏实,性格比较慢热,是个理财高手。',
          '喜欢追求新鲜感,有点小聪明,耐心不够,因你的可爱性格会让很多人喜欢和你做朋友。',
          '情绪容易敏感,缺乏安全感,做事情有坚持到底的毅力,为人重情重义,对朋友和家人特别忠实。',
          '有着远大的理想,总想靠自己的努力成为人上人,总是期待被仰慕被崇拜的感觉。',
          '坚持追求自己的完美主义者。',
          '追求平等、和谐,交际能力强,因此朋友较多。最大的缺点就是面对选择总是犹豫不决。',
          '精力旺盛,占有欲强,对于生活很有目标,不达目的誓不罢休,复仇心重。',
          '崇尚自由,勇敢、果断、独立,身上有一股勇往直前的劲儿,只要想做,就能做。',
          '是最有耐心的,做事最小心。做事脚踏实地,比较固执,不达目的不罢休,而且非常勤奋。',
          '人很聪明,最大的特点是创新,追求独一无二的生活,个人主义色彩很浓重的星座。',
          '集所有星座的优缺点于一身。最大的优点是有一颗善良的心,愿意帮助别人。']
sign_dict = dict(zip(sign_all, nature))             #转换为星座字典
print("【香凝】的星座是" ,person_dict.get("香凝"))       #get获取"香凝"的健值
print("\n她的性格特点是:\n",sign_dict.get(person_dict.get("香凝")))

 

 

实例11:应用字典推导式实现根据名字和星座创建一个字典

   在IDLE中创建一个名称为sign_create.py的文件,然后在该文件中,定义两个包括4个元素的列表,再应用字典推导式将前两个列表转换为对应的字典,并且输出该字典。

name =['绮梦', '冷伊一', '香凝', '黛兰']         #作为健的列表
sign =['水瓶', '射手', '双鱼', '双子']          #作为值的列表
dictionary = {i : j + '座' for i,j in zip(name, sign)}
print(dictionary)

 

 

实例12:创建保存学生选课信息的集合

        在 IDLE中创建一个名称为section_create.py 的文件,然后在该文件中,定义两个包括4个元素的集合,再输出这两个集合。

python = {'绮梦', '冷伊一', '香凝', '梓轩'}
c = {'冷伊一', '零语', '梓轩', '圣博'}
print("选择python语言的学生有:", python)
print("选择C语言的学生有:", c)

 

实例13:学生更改选学课程

  在 IDLE中创建一个名称为 section_add.py的文件,然后在该文件中,定义一个包括4个元素的集合,并且应用add()函数向该集合中添加一个元素,再定义一个包括4个元素的集合,并且应用remove()方法从该集合中删除指定的元素,最后输出这两个集合。

python = set(['绮梦', '冷伊一', '香凝', '梓轩'])
python. add('零语')                   
c = set(['冷伊一', '零语', '梓轩', '圣博'])
c.remove('零语')                      
print("选择Python语言的学生有:", python)
print("选择C语言的学生有:", c)

 

 

实例14:对选课集合进行交集、并集和差集运算

  在IDLE中创建一个名称为section_operate.py 的文件,然后在该文件中定义两个包括4个元素的集合,再根据需要对两个集合进行交集、并集和差集运算,并输出运算结果。

python = set(['绮梦', '冷伊一', '香凝', '梓轩'])
c = set(['冷伊一', '零语', '梓轩', '圣博'])
print("选择Python语言的学生有:", python)
print("选择C语言的学生有:", c)
#输出既选择了Python语言又选择了C语言的学生姓名
print("交集运算:", python & c)
#输出参与选择的全部学生姓名
print("并集运算:", python | c)
#输出只选择Python没有选择C的学生姓名
print("差集运算:", python - c)

 

 

实战一:输出“王者荣耀”的游戏角色

  “王者荣耀”游戏中有很多英雄,这些英雄可以分为法师、战士、坦克、刺客、射手和辅助。本实战将应用Python中的列表存储不同类别的英雄,并且遍历输出这些英雄。

print("“王者荣耀”游戏角色")
print("===坦克===")
tank=['庄周','项羽', '廉颇', '巨灵神', '安禄山', '猪八戒']
for item in tank:
    print(item+"\t", end='')
print("\n===战士===")
soldier=['狂铁', '裴擒虎', '恺', '孙悟空', '哪吒', '杨戬', '橘右京', '亚瑟', '雅典娜', '夏侯惇', '关羽', '吕布', '韩信', '老夫子','达摩', '典韦','曹操','钟无艳','墨子','赵云','刑天','龙且']
for item in soldier:
    print(item+"\t",end='')
print("\n===刺客===")
assassin=['百里玄策', '庞统', '花木兰', '阿轲', '不知火舞', '李白', '娜可露露', '兰陵王', '露娜', '韩信', '宫本武藏', '盖聂', '红拂']
for item in assassin:
    print(item+"\t", end='')
print("\n===法师===")
rebbi=['杨玉环', '弈星', '女娲', '周瑜', '鬼谷子', '芈月', '干将莫邪', '东皇太一', '大乔', '诸葛亮', '貂蝉', '张良', '安其拉', '不知火舞', '姜子牙', '武则天', '王昭君', '甄姬', '扁鹊', '高渐离', '嬴政', '妲己', '小乔']
for item in rebbi:
    print(item+"\t", end='')
print("\n===射手===")
shooter=['公孙离', '百里守约', '后羿', '刘备', '黄忠', '马可波罗', '成吉思汗', '虞姬', '李元芳', '艾琳', '狄仁杰', '鲁班七号', '孙尚香']
for item in shooter:
    print(item+"\t", end='')
print("\n===辅助===")
assist=['明世隐', '梦奇', '孙膑', '太乙真人',  '蔡文姬']
for item in assist:
    print(item+"\t", end='')

 

 

标签:输出,item,列表,print,文件,应用,序列,sign,第四章
From: https://www.cnblogs.com/diana77/p/16776576.html

相关文章

  • #冲刺创作新星# #跟着小白一起学鸿蒙# [八] 蓝牙应用
    蓝牙简介蓝牙(Bluetooth)是一个短距离无线通信标准,用于在手机、计算机和其他电子设备之间通信。在Linux中权威的蓝牙协议栈实现是BlueZ。其本身自带了很多有用的工具,如blu......
  • 序列化与反序列化
    序列化:是把对象转换为字节序列,永久存到磁盘中。在网络中传输对象也要进行序列化。反序列化:是从磁盘中读取字节序列将它们反序列化成对象读出来。什么是字节序列每一个字......
  • 如何使用vuforiaSDK开发第一个AR demo应用
    1.IfyouareusingorplanningtousetheAndroidStudioIDE,herearesomenotesabouthowtoimportandbuildtheVuforiasamples:首先安装好环境:JDK,NDK,AndroidS......
  • Class 1 达摩院视觉AI技术应用探索
    title:Class1达摩院视觉AI技术应用探索excerpt:达摩院特别版-视觉AI训练营tags:[阿里云,达摩院,AI,应用,视觉]categories:[学习,阿里云]index_img:ht......
  • Python 应用之求 100 以内的奇数和
    在数学中,我们需要用到很多求和的办法,比如说求1至100的和,还有100以内的所有偶数和和所有奇数和,如果我们慢慢地计算是不是很浪费时间,还容易出错。其实通过Python就可......
  • 【Azure 应用服务】Python Function App重新部署后,出现 Azure Functions runtime is u
    问题描述PythonFunctionApp重新部署后,出现AzureFunctionsruntimeisunreachable错误 问题解答在FunctionApp的门户页面中,登录Kudu站点(https://<yourfunction......
  • Spring Boot应用启动的方式:3种
    Java8SpringBoot2.7.3-- 本文简单展示3种SpringBoot应用启动的方式:SpringApplication类和SpringApplicationBuilder类中的方法。 建立SpringBoot(版本2.......
  • 易操作、可观测、可扩展,EMQX如何简化物联网应用开发
    引言:更加轻松地使用EMQX最新发布的大规模分布式物联网MQTT消息服务器​​EMQX5.0​​在​​水平扩展性​​、​​消息传输稳定性​​、​​安全性​​等方面实现了突......
  • thinkphp5.1反序列化RCE
    thinkphp5反序列化RCEthinkphp5.1.37-5.1.41NewStarCTF第三周Web题目MaybeYouHaveTothinkMoreThinkPHP5框架反序列化RCE正好来研究一下php框架反序列化php反......
  • asyncio应用
    #1#asyncio没有提供http协议的接口aiohttp'''importasyncioimportsocketfromurllib.parseimporturlparseasyncdefget_url(url):#通过socket请求ht......