python录入楼层信息

import csv

#调用csv模块

with open('assets.csv', 'a', newline='') as csvfile:

#调用open()函数打开csv文件,传入参数:文件名“assets.csv”、追加模式“a”、newline=''。

writer = csv.writer(csvfile, dialect='excel')

# 用csv.writer()函数创建一个writer对象。

header=['小区名称', '地址', '建筑年份', '楼栋', '单元', '户室', '朝向', '面积']

writer.writerow(header)

title=input('请输入小区名称:')

address = input('请输入小区地址:')

year = input('请输入小区建造年份:')

block = input('请输入楼栋号:')

unit_loop = True

while unit_loop:

unit=input('请输入单元号:')

start_floor = input('请输入起始楼层:')

end_floor = input('请输入终止楼层:')

# 开始输入模板数据

input('接下来请输入起始层每个房间的门牌号、南北朝向及面积,按任意键继续')

start_floor_rooms = {}

floor_last_number = []

# 收集起始层的房间信息

# 定义循环控制量

room_loop = True

while room_loop:

last_number = input('请输入起始楼层户室的尾号:(如01,02)')

floor_last_number.append(last_number)

#将尾号用append()添加列表里,如floor_last_number = ['01','02']

room_number = int(start_floor + last_number)

#户室号为room_number,由楼层start_floor和尾号last_number组成,如301

direction = int(input('请输入 %d 的朝向(南北朝向输入1,东西朝向输入2):' % room_number ))

area = int(input('请输入 %d 的面积,单位 ㎡ :' % room_number))

start_floor_rooms[room_number] = [direction,area]

# 户室号为键,朝向和面积组成的列表为值,添加到字典里,如start_floor_rooms = {301:[1,70]}

continued= input('是否需要输入下一个尾号?按 n 停止输入,按其他任意键继续:')

#加入打破循环的条件

if continued == 'n':

room_loop = False

else:

room_loop = True

unit_rooms = {}

#新建一个放单元所有户室数据的字典

unit_rooms[start_floor] = start_floor_rooms

#unit_rooms={3:{301:[1,80],302:[1,80],303:[2,90],304:[2,90]}}

for floor in range(int(start_floor) + 1, int(end_floor) + 1):

#遍历除初始楼层外的其他楼层

floor_rooms = {}

#每个楼层都建立一个字典

for i in range(len(start_floor_rooms)):

#遍历每层有多少个房间,这里是3,即执行for i in range 3 的循环

number = str(floor) + floor_last_number[i]

info = start_floor_rooms[int(start_floor + floor_last_number[i])]

# 依次取出字典start_floor_rooms键对应的值,即面积和朝向组成的列表

floor_rooms[int(number)] = info

#给字典floor_rooms添加键值对,floor_rooms = {401:[1,80]}

unit_rooms[floor] = floor_rooms

with open('assets.csv', 'a', newline='')as csvfile:

#Mac用户要加多一个参数 encoding = 'GBK'

writer = csv.writer(csvfile, dialect='excel')

for sub_dict in unit_rooms.values():

for room,info in sub_dict.items():

dire = ['', '南北', '东西']

writer.writerow([title,address,year,block,unit,room,dire[info[0]],info[1]])

unit_continue = input('是否需要输入下一个单元?按 n 停止单元输入,按其他任意键继续:')

if unit_continue == 'n':

unit_loop = False

else:

unit_loop = True

print('恭喜你,资产录入工作完成!')

(0)

相关推荐

  • 地道英语:First Floor真的指一楼吗?

    语法很难?很枯燥?很多人对语法望而却步,其实是你不知道方法!今天,我们换种方式, 不需要死记硬背,轻轻松松学语法.我们先来看下面的题目,你能选对吗? 艾伦英语部落今天的选择题看着很简单,这四个词大家肯 ...

  • 第19关精华笔记

    第19关精华笔记pdf版--同学记得打开电脑浏览器下载哦!  第19关精华笔记.pdf 0.2MB  项目解示 代码一: import csv #调用csv模块 with open('assets ...

  • 人教版1-6年级英语知识汇总,适合考试复习使用!

    一年级 人教新起点一年级下册Unit2知识汇总 一.词汇 light  灯     bed  床      door  门:出入口    box  箱子:盒子 near  靠近,接近     behi ...

  • Python使用csv模块读写csv文件

    csv是逗号分隔值(Comma-Separated Values)的简称. 有时也称为字符分隔值,因为分隔字符也可以不是逗号,其文件以纯文本形式存储表格数据.纯文本意味着该文件是一个字符序列,不含必须 ...

  • 爬虫精进6

    ---------如有疑问,欢迎交流指正-------- 第6关 练习-储存电影信息-参考 第一步:分析问题,明确结果 问题需求就是把豆瓣TOP250里面的 序号/电影名/评分/推荐语/链接 都爬取下 ...

  • Python获取对象信息之内置函数dir()

    对于类对象或实例对象,可以调用内置函数dir()获取其所有可以访问的属性和方法(包括从父类中继承的属性和方法)的列表.类对象与实例对象的结果是有区别的,类对象的结果不包括实例属性. 示例: #codi ...

  • excel如何设置避免录入文本信息

    在表格录入中,有时候我们只能录入数据,不能录入文本,那么如何设置避免录入文本信息呢? 打开一个"商品库存表",含有"商品名称"和"库存数量" ...

  • 关于如何查看本地python类库详细信息的方法

    转载于:http://blog.csdn.net/qq_28418387/article/details/52869559 在本文中以numpy为例查询方法如下: 首先打开命令行输入:  python ...

  • 真是难为各位家长了,连小学入学信息登记都争着第一时间录入!

    真是难为各位家长了,连小学入学信息登记都争着第一时间录入,就怕把自己家孩子落下了! 今天9点开始,长春市小学入学信息登记正式开始了!各位家长掐点进入网上信息登记系统,结果可想而知啊,网络卡的不要不要的 ...

  • Python爬虫新手入门教学(四):爬取前程无忧招聘信息

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. Python爬虫.数据分析.网站开发等案例教程视频免费在线观看 https://space. ...

  • 华为手机只需扫一扫名片,只需1秒钟,就能把名片信息录入通讯录

    华为手机只需扫一扫名片,只需1秒钟,就能把名片信息录入通讯录

  • python测试开发django-35.xadmin注册表信息

    前言 xadmin后台如果要对表的内容增删改查,跟之前的admin.py文件里面写注册表信息一样,需在admin.py同一级目录新建一个adminx.py的文件. 然后在adminx.py文件控制页面 ...

  • (3条消息) Python爬取全国高校信息并写入csv

    2021-03-23更新 原来的页面有一些小的改变, 原来的院校特效一列变成了现在的 一流大学建设高校 和一流学科建设高校 两列, 所以代码需要有一些改变,总的代码已经更新了,至于思路那部分就不改了. ...

  • 自学 Python 到什么程度能找到工作,1300+ 条招聘信息告诉你答案

    来源:Python 技术「ID: pythonall」 随着移动互联网的发展以及机器学习等热门领域带给人们的冲击,让越来越多的人知道并开始学习 Python.无论你是是科班出身还是非科班转行,Pyth ...