当前位置: 首页 > news >正文

深圳网站建设哪家强网店运营具体做什么

深圳网站建设哪家强,网店运营具体做什么,知道源码做网站,青岛做网站公司有哪些一、效果展示通过Python实现一个电影订票系统,效果如下所示:二、整体结构图三、代码分解3.1 infos.py一部电影的详细信息适合用 字典 结构来存储,我们可以给字典里添加多个键值对来保存电影的名称、座位表和宣传时用的字符画,比如…

一、效果展示

通过Python实现一个电影订票系统,效果如下所示:

二、整体结构图

三、代码分解

3.1 infos.py

一部电影的详细信息适合用 字典 结构来存储,我们可以给字典里添加多个键值对来保存电影的名称、座位表和宣传时用的字符画,比如电影《泰坦尼克号》的详细信息就可以按下面的形式保存到字典 titanic 中:

infos = [{'name': '泰坦尼克号','symbol': '''
+==================== 泰坦尼克号 =====================+▄▄▄▄▄▪   ▄▄▄▄▄  ▄▄▄·   ▐ ▄ ▪      ▄▄· •██   ██  •██   ▐█ ▀█  •█▌▐█  ██  ▐█ ▌▪▐█.▪ ▐█·  ▐█. ▪▄█▀▀█  ▐█▐▐▌  ▐█· ██ ▄▄▐█▌ ·▐█▌  ▐█▌· ▐█ ▪▐▌ ██▐█▌  ▐█▌ ▐███▌▀▀▀  ▀▀▀  ▀▀▀   ▀  ▀  ▀▀ █  ▪▀▀▀ ·▀▀▀ 
+===================== Titanic =====================+
''','seats': [['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '○', '●', '○', '○', '●'],['○', '○', '●', '○', '●', '○', '○', '○'],['○', '○', '●', '○', '○', '○', '○', '●'],['○', '○', '●', '○', '○', '○', '●', '○'],['●', '○', '○', '○', '●', '●', '●', '●']]},{'name': '雨人','symbol': '''
+====================== 雨人 =======================+,---.    .--.  ,-..-. .-.           .--.  .-. .-. | .-.\  / /\ \ |(||  \| | |\    /| / /\ \ |  \| | | `-'/ / /__\ \(_)|   | | |(\  / |/ /__\ \|   | | |   (  |  __  || || |\  | (_)\/  ||  __  || |\  | | |\ \ | |  |)|| || | |)| | \  / || |  |)|| | |)| |_| \)\|_|  (_)`-'/(  (_) | |\/| ||_|  (_)/(  (_) (__)         (__)     '-'  '-'       (__)     
+===================== Rain Man ====================+
''','seats': [['○', '○', '○', '○', '●', '○', '○', '●'],['○', '○', '○', '●', '●', '○', '○', '○'],['○', '●', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '●', '○', '○', '○', '○', '○'],['○', '○', '○', '○', '○', '○', '○', '○']]},{'name': '卡门','symbol': '''
+======================= 卡门 =======================+▄█▄    ██   █▄▄▄▄ █▀▄▀█ ▄███▄      ▄   █▀ ▀▄  █ █  █  ▄▀ █ █ █ █▀   ▀      █  █   ▀  █▄▄█ █▀▀▌  █ ▄ █ ██▄▄    ██   █ █▄  ▄▀ █  █ █  █  █   █ █▄   ▄▀ █ █  █ ▀███▀     █   █      █  ▀███▀   █  █ █ █   ▀      ▀           █   ██ ▀                              
+====================== Carmen =====================+
''','seats': [['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '●', '●', '○', '○', '●', '●'],['○', '○', '○', '○', '○', '○', '●', '○'],['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '●', '○', '○', '○', '●']]},{'name': '机器人总动员','symbol': '''
+==================== 机器人总动员 ===================+(`\ .-') /`  ('-.                           ('-.   `.( OO ),' ( OO ).-.                     _(  OO)  ,--./  .--.   / . --. / ,--.      ,--.     (,------. |      |  |   | \-.  \  |  |.-')  |  |.-')  |  .---' |  |   |  |,.-'-'  |  | |  | OO ) |  | OO ) |  |     |  |.'.|  |_)\| |_.'  | |  |`-' | |  |`-' |(|  '--.  |         |   |  .-.  |(|  '---.'(|  '---.' |  .--'  |   ,'.   |   |  | |  | |      |  |      |  |  `---. '--'   '--'   `--' `--' `------'  `------'  `------'  
+====================== WALL·E =====================+
''','seats': [['●', '○', '○', '○', '○', '○', '○', '○'],['●', '○', '○', '○', '○', '○', '○', '●'],['○', '○', '●', '○', '●', '○', '●', '○'],['○', '○', '○', '○', '○', '○', '○', '●'],['○', '○', '○', '○', '●', '○', '○', '○'],['●', '●', '○', '○', '○', '●', '○', '○']]},{'name': '黑客帝国','symbol': '''
+===================== 黑客帝国 =====================+________            __  ___      __       _     /_  __/ /_  ___     /  |/  /___ _/ /______(_)  __/ / / __ \/ _ \   / /|_/ / __ `/ __/ ___/ / |/_// / / / / /  __/  / /  / / /_/ / /_/ /  / />  <  /_/ /_/ /_/\___/  /_/  /_/\__,_/\__/_/  /_/_/|_|  
+==================== The Matrix ===================+
''','seats': [['○', '●', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '●', '●', '○', '○', '●'],['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '○', '○', '○', '○', '○'],['○', '○', '○', '○', '○', '○', '○', '●'],['○', '○', '●', '○', '○', '○', '○', '○']]},
]

3.2 seat_book.py

选座系统,需要实现下面这两样需求:

展示所有座位的预订状态,方便用户查看哪些座位还可以预订;

根据用户输入的座位号完成预订。

可以把选座系统抽象成一个类:SeatBooking,这个类包含了两种方法,check_bookings() 用于展示所有座位的预订状态,book_seat() 用于完成预订。

import timeclass SeatBooking:# 展示所有座位的预订信息def check_bookings(self, seats):print("正在为您查询该场次电影的预订状态...")time.sleep(0.7)print('从上到下为 1~6 排,从左至右为 1~8 座')print("======================")for row in seats:time.sleep(0.1)print('  '.join(row))print("======================")time.sleep(0.7)# 获取符合要求的行索引def get_row(self):input_row = input("预订第几排的座位呢?请输入 1~6 之间的数字")valid_row = [str(i + 1) for i in range(6)]while input_row not in valid_row:input_row = input('没有按要求输入哦,请输入 1~6 之间的数字')row = int(input_row) - 1return row# 获取符合要求的列索引def get_col(self):input_column = input('预订这一排的第几座呢?请输入 1~8 之间的数字')valid_column = [str(i + 1) for i in range(8)]while input_column not in valid_column:input_column = input('没有按要求输入哦,请输入 1~8 之间的数字')column = int(input_column) - 1return column# 预订指定座位def book_seat(self, seats):while True:row = self.get_row()column = self.get_col()# 指定座位没有被预订if seats[row][column] == '○':print("正在为您预订指定座位...")time.sleep(0.7)seats[row][column] = '●'print("预订成功!座位号:{}排{}座".format(row + 1, column + 1))break  # 结束循环,退出选座# 指定座位已经被预订了else:print("这个座位已经被预订了哦,试试别的吧")time.sleep(0.7)# 预订最靠前的座位def book_seat_at_front(self, seats):print("正在为您预订最靠前的座位...")time.sleep(0.7)# 外循环:遍历 seats 的行for row in range(6):# 内循环:遍历 seats 的列for column in range(8):# 若碰到没有被预订的座位if seats[row][column] == '○':seats[row][column] = '●' # 预订该座位print("预订成功!座位号:{}排{}座".format(row + 1, column + 1))return # 结束函数的执行,返回到它被调用的地方# 没有在循环内部结束程序,说明不存在没有被预订的座位print("非常抱歉 ,所有座位都被订满了,无法为您保留座位")

3.3 film_selector.py

先来解决ling一项任务:电影选择系统。出于人性化考虑,我们希望用户既可以输入序号选择观看电影,也可以输入 x 选择退出系统。为此,我们需要完成下面两样需求:

和选座系统一样,我们可以把“选择电影场次”功能抽象成一个类,称为 电影选择系统。

而根据用户选择,预订某一场次的座位,实际上是先调用 电影选择系统 选择电影,再调用 选座系统 预订座位。这中间涉及到多次类的实例化与方法调用,为了更清晰地组织代码,我们将这部分内容也抽象成一个类,称为 控制系统。

import timeclass FilmSelector:# 展示所有可选项def display_options(self, films):print("今日影院排片列表:")print('+================+')# 按行打印每部电影for i in range(len(films)):print('{} - {}'.format(i + 1, films[i]['name']))time.sleep(0.2)# 打印退出选项print('x - 退出')print('+================+')time.sleep(0.7)# 获取用户的选择def get_choice(self, films):# 符合要求的输入列表valid_choice = [str(i + 1) for i in range(len(films))]valid_choice.append('x')choice = input('你的选择是?')# 当不符合要求时,循环获取新的选项while choice not in valid_choice:choice = input('没有按照要求输入哦,请重新输入')# 返回用户做出的选择return choice

3.4 main.py

import time
from infos import infos
from film_selector import FilmSelector
from seat_booking import SeatBookingclass Controller:def __init__(self, infos):self.films = infos  # 电影库所有电影# 打印欢迎语self.welcome()# 用户选择想观看的电影self.choose_film()# 根据用户选择,执行不同流程if self.choice != 'x':# 为指定场次预订座位self.choose_seat()# 打印结束语self.bye()# 用户选择想观看的电影def choose_film(self):# 实例化 FilmSelector 类selector = FilmSelector()# 展示所有用户可以选择的选项selector.display_options(self.films)# 通过 get_choice() 方法获取用户选择self.choice = selector.get_choice(self.films)# 为指定场次预订座位def choose_seat(self):# 取出用户所选择的电影film = self.films[int(self.choice) - 1]# 取出所选择电影的电影名、座位表、宣传画name = film['name']seats_list = film['seats']symbol = film['symbol']# 打印提示信息和电影宣传画print('正在为您预订电影《{}》的座位...'.format(name))time.sleep(0.7)print(symbol)time.sleep(0.7)# 打印预订座位的方法列表print('支持的座位预订方式如下:')time.sleep(0.7)print('+==========================+')print("1 - 指定行列号预定座位")print("2 - 给我预订一个最靠前的座位!")print('+==========================+')time.sleep(0.7)print('')# 获取座位预订方式method = input('请选择座位预订方式')# 定义符合要求输入列表 valid_methodvalid_method = ['1','2']# 当不符合要求时,循环获取新的选项while method not in valid_method:method = input('没有按照要求输入哦,请重新输入')# 实例化 SeatBooking 类booking = SeatBooking()# 打印所有座位的预订信息booking.check_bookings(seats_list)# 方法 1:指定行列号if method == '1':booking.book_seat(seats_list)# 方法 2:预订最靠前的座位else:booking.book_seat_at_front(seats_list)# 打印欢迎语def welcome(self):print('+============================+')print('+      欢迎来到时光电影院       +')print('+============================+')print('')time.sleep(0.7)# 打印结束语def bye(self):print('')time.sleep(0.7)print('+============================+')print('+    已经退出系统,下次见!     +')print('+============================+')<br/># 实例化 Controller 类
s = Controller(infos)

就分享到这里了,赶快上手试试吧!

http://www.khdw.cn/news/26006.html

相关文章:

  • 旅游休闲类网站的建设湖南seo优化哪家好
  • 陕西省卫计委官方网站行风建设推广引流网站
  • vue建设pc端web网站天津的网络优化公司排名
  • 网络架构图惠州seo按天付费
  • 自建网站的劣势搜盘 资源网
  • wordpress企业微信福建搜索引擎优化
  • 安徽省建设监理协会网站国内seo排名分析主要针对百度
  • wordpress底部导航主题seo流量软件
  • 网站中文域名好吗网站排名首页前三位
  • 做佩戴护身符的厂家网站广告推广系统
  • 如何在网站申请做co河源网站seo
  • ps里怎么做网站做营销型网站的公司
  • 一个新手如何做网站长沙本地推广
  • 清理网站数据库百度推广助手
  • 无锡建设工程项目代码申请网站新闻发布会新闻通稿
  • 只做彩票网站犯法吗百度快照怎么做
  • 做高端网站建设公司网络推广方法
  • 做服装要看国外哪些网站盐城seo营销
  • 深圳网站建设seo如何在百度上做广告宣传
  • 浏览器网页版在线使用长沙seo排名外包
  • 中英文网站建设需要懂英语吗提高工作效率的方法
  • 网站建设工作会议讲话seo推广的全称是
  • 成都麦卡网络做网站开发怎么样最新app推广
  • wordpress自动文章时间插件宁波seo整站优化
  • 施工员证报名入口官网seo英文全称
  • 夹娃娃网站如何做互联网营销师证书有用吗
  • 孟村做网站东莞关键词自动排名
  • 网站优化北京网络推广网站建设
  • 优惠券网站要怎么做汽车营销活动策划方案
  • 吉林省示范校建设专题网站搜索引擎营销的优缺点及案例