Python 实例:手机通讯录(使用GUI图形界面并用text文本记录数据)之二

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

在使用text文本的通讯录的基础之上进行了改进
使用GUI图形界面
之前做了一个作业,后面帮别人搞了一个作业,为了跟自己不一样稍微排版了一下之类的
简化了一下代码之类的
上篇的通讯录PythonPython 实例:)手机通讯录(使用text文本记录数据
下面是运行截图:

在这里插入图片描述复制粘贴运行就ok了
贴代码:
-----------------------2021.12.17 简化了一下代码,方便小伙伴截图代码上交word截图---------------------------------
复制直接运行就可以了
-----------------------2022.4.28 评论区大哥提出的bug进行了部分代码进行了一个修改---------------------------------

import tkinter.messagebox
import json
import os
import tkinter

root = tkinter.Tk()
root.title('通讯录')
root.geometry("550x550")
file = open("通讯录.txt", mode='a', encoding='utf-8')
file.close()
def showinfo():
    Frame_info = tkinter.Frame(root, height=150, width=180)
    Frame_info.place(x=40, y=180)
    name_label = tkinter.Label(Frame_info, text="名字", font=('宋体', 18))
    name_label.grid(row=0, column=0)
    phone_label = tkinter.Label(Frame_info, text="手机号", font=('宋体', 18))
    phone_label.grid(row=0, column=1)
    mail_label = tkinter.Label(Frame_info, text="邮箱", font=('宋体', 18))
    mail_label.grid(row=0, column=2)
    address_label = tkinter.Label(Frame_info, text="地址", font=('宋体', 18))
    address_label.grid(row=0, column=3)
    file = open("通讯录.txt", mode='r', encoding='utf-8')
    if len(file.read()) != 0:
        file.seek(0, 0)
        file_data = file.read()
        split_info = file_data.split('\n')
        split_info.remove(split_info[len(split_info) - 1])
        name_li = []  # 用于存储联系人姓名的列表
        all_info_li = []  # 用于存储所有信息的列表
        for i in split_info:
            dict_info = json.loads(i.replace("\'", '\"'))
            all_info_li.append(dict_info)
            row_count = 0
        for person_info in all_info_li:
            row_count += 1
            column_count = 0
            for title, info_value in person_info.items():
                tktest = tkinter.Label(Frame_info, text=info_value, font=('宋体', 15, 'bold'))
                tktest.grid(row=row_count, column=column_count)
                column_count += 1
        row_count += 1
        tktest = tkinter.Label(Frame_info, text=" "*20, font=('宋体', 15, 'bold'))
        tktest.grid(row=row_count, column=column_count)

showinfo()

# 添加
def add_def(event):
    def add_man(event
如何用python做一个通讯录系统?(含源码) 在日常生活和工作中,通讯录是帮助我们管理联系人信息的重要工具。使用 Python 语言,我们可以轻松地开发一个功能实用的通讯录系统。下面将详细介绍如何一步步构建这样一个系统。 阅读详情

相关推荐

Python 实例手机通讯录使用GUI图形界面并用text文本记录数据

Python 实例手机通讯录使用GUI图形界面使用text文本记录数据

锤锤的博客 5349

python tkinter 实现学生通讯录

python tkinter 实现学生通讯录(程序设计实践作业)

python-手机通讯录

通讯录记录了联系人姓名和联系方式的名录,手机通讯录是最常见的通讯录之一,人们可以在通讯录中通过姓名查看相关联系人的联系方式等信息,也可以在其中新增联系人,或修改、删除联系人信息。per_address = input('请输入联系人的地址:')phone_num = input('请输入联系人的手机号:')per_email = input('请输入联系人的邮箱:')per_name = input('请输入联系人的姓名:')print("4.修改联系人信息")print("3.删除联系人")

2301_76871571的博客 5344

Python 用嵌套字典实现手机通讯录(详解版)

用字典模拟手机通讯录 知识点: 1、嵌套字典使用 2、字典增删改查 3、嵌套循环/条件语句/跳转语句 4、数据类型转换/元素索引 改善与不足: 1、代码块很臃肿,有很多重复的代码,如果使用函数就能避免 2、在多个重名选择输入序号时,没有做限制 3、程序结束,数据删除,无法保存

zhouhua2022的博客 6776

python基础编程小实例13——手机通讯录

编程语言:python3.9 题目 可以在通讯录中通过姓名查看相关联系人的联系方式等信息,也可以在其中新增联系人,或修改、删除联系人信息。 本实例要求编写程序,实现具备添加、查看、修改以及删除联系人信息功能的手机通讯录。 题目分析 本题主要考查对字典熟悉程度,由于每一个联系人可能不止一个电话号码,并根据字典的特性本题采用电话号码作为键key. 字典的增删改查所运用到的函数分别如下: 增:dict.updata() 删:dict.pop() 改:dict.updata() 查:dict.i

Shown_的博客 3万+

Python办公自动化:用openpyxl和python-docx实现Excel到Word表格数据精准迁移

数据处理与文档生成的工作流中,自动化脚本是提升效率的关键。其核心原理是通过编程接口(API)对结构化数据文件进行读写操作,实现跨应用的数据流转。这项技术的核心价值在于将人工重复操作转化为标准化、零差错的自动化流程,尤其适用于周报生成、客户信息整理、报告编制等需要频繁在Excel和Word间同步数据的场景。本文聚焦于使用Python生态中的openpyxl和python-docx这两个库,针对“python读取excel数据全部读取耗时5分钟”的性能痛点,提供了使用read_only模式与iter_rows

weixin_30384217的博客 384

移动GUI自动化隐私防护:CAPED框架实现原理与实战部署

GUI自动化是移动应用测试、无障碍服务和RPA领域的核心技术,它通过模拟用户操作实现任务自动化。其核心原理在于解析UI元素并生成操作指令。然而,在自动化过程中,代理程序会不可避免地接触到屏幕上的各类信息,这带来了显著的隐私泄露风险,尤其是在处理金融、社交等包含敏感数据的应用时。为了平衡自动化效率与数据安全,业界提出了“上下文感知”的隐私防护理念。该技术旨在赋予自动化代理情境理解能力,使其能动态识别并过滤敏感信息,实现“该看的看,不该看的自动打码”。本文探讨的CAPED框架正是这一理念的工程实践,它通过轻量级

congsikuai0611的博客 353

Python自动化办公:定制化读取Excel数据并写入Word表格

数据处理与文档生成的工作流中,自动化技术正逐步取代传统的手动操作。其核心原理是通过编程脚本,实现对结构化数据的精准提取、转换与格式化输出,从而将人力从重复性劳动中解放出来。这项技术的价值在于显著提升工作效率、减少人为错误,并确保输出结果的一致性。它广泛应用于报告生成、数据汇总、信息归档等需要跨软件协作的场景。针对常见的性能瓶颈与样式控制难题,例如“python读取excel数据全部读取耗时5分钟”和“poi设置word表格单元格宽度”,本文将通过Python生态中的主流库,构建一个健壮、高效的定制化数据

weixin_33798152的博客 485

GUI-Owl 1.5:基于多模态大模型的跨平台GUI智能自动化实践

跨平台GUI自动化长期以来面临不同操作系统和应用程序接口碎片化的挑战,传统方案如Selenium、Appium和PyAutoGUI等工具各自为政,维护成本高昂。其核心原理在于通过视觉感知统一交互入口,将屏幕像素信息转化为机器可理解的语义表示,再结合任务规划与决策,最终生成可执行的原子操作。这一技术范式转变的价值在于实现了真正的“一次编写,到处运行”,大幅降低了自动化脚本的开发和维护成本。在应用场景上,它不仅能用于软件测试和RPA流程自动化,还能赋能无障碍辅助等新兴领域。本文聚焦的GUI-Owl 1.5,作为

417

Python零基础一个月实战路线:从环境搭建到项目开发避坑指南

编程学习往往从环境配置和包管理开始,这是新手最容易遇到障碍的环节。理解虚拟环境的概念和工作原理,能有效隔离项目依赖,避免版本冲突,这是现代软件开发的基础实践。掌握这些核心工程方法,不仅能提升开发效率,还能为后续学习数据分析、Web开发等技术方向打下坚实基础。本文聚焦Python实战入门,通过Miniconda环境管理、VSCode编辑器配置和虚拟环境使用,构建稳定的开发工作流,并结合数据清洗、网络爬虫等实际项目场景,帮助学习者快速跨越初期障碍,将基础知识转化为解决实际问题的能力。

weixin_30236595的博客 453

园区Python实战培训:从环境搭建到自动化办公与数据爬虫

Python作为一种高级编程语言,以其简洁的语法和丰富的第三方库生态,成为自动化办公和数据分析领域的高效工具。其核心原理在于通过解释器执行脚本,结合pip进行包管理,并利用虚拟环境隔离项目依赖。在技术价值上,Python能显著提升重复性工作的处理效率,实现业务流程自动化。典型的应用场景包括Excel报表的批量合并与清洗、Word文档的模板化生成,以及网络公开数据的合规采集与分析。本文聚焦于园区企业培训场景,针对非技术背景学员,详细拆解了如何通过项目实战快速掌握Python解决实际问题的能力,涵盖了环境配置、

weixin_34208283的博客 354

Python新手入门:从零到实战的系统学习路径与核心技能精讲

编程语言作为人机交互的桥梁,其核心价值在于将复杂逻辑转化为计算机可执行的指令。Python作为一种高级、解释型、通用的编程语言,因其语法简洁、可读性强而备受青睐。其设计哲学强调代码的优雅与明确,通过解释器逐行执行,实现了快速开发与灵活调试。在技术价值层面,Python凭借其丰富的标准库和庞大的第三方生态,极大地降低了开发门槛,提升了工程效率。应用场景覆盖Web开发、数据分析、人工智能、自动化脚本及网络爬虫等多个领域,成为跨行业解决问题的通用工具。本文聚焦于Python学习路径,系统讲解从环境搭建、基础语法到

cnracht8153的博客 407

Python逆向工程实战:从网络抓包到协议分析的技术探索

逆向工程是信息安全领域的重要技术,它通过分析软件运行机制来理解其工作原理。这项技术基于对客户端与服务器通信协议的深度解析,涉及网络抓包、协议逆向、参数破解等核心环节。在技术价值上,逆向工程能够帮助开发者理解系统安全机制,提升应用防护能力,同时为安全审计提供方法论支持。其典型应用场景包括移动应用安全分析、协议漏洞挖掘以及自动化测试工具开发。本文以Python技术栈为例,结合mitmproxy抓包工具和frida动态调试框架,详细拆解了网络请求分析与协议逆向的实践流程,探讨了在合法合规前提下进行技术研究的边界与

weixin_30920853的博客 404

Python编程进阶:100道经典练习题实战指南与学习路径

编程学习的关键在于从理解语法到独立解决问题的跨越,这需要通过系统性的刻意练习来实现。Python作为一门应用广泛的高级语言,其核心在于掌握基础语法、数据结构与算法思维,并能将其应用于实际场景。通过精心设计的练习题,学习者可以逐步构建逻辑思维、调试能力和代码审美,从而形成解决实际问题的知识网络。本文围绕Python实战进阶,整合了涵盖字符串处理、列表字典、文件操作、面向对象等核心知识模块的100道经典练习题,并提供了从暴力解法到Pythonic写法的优化思路,帮助初学者建立高效的问题解决思维模型。坚持完成这套

weixin_34054931的博客 418

手机前,我把五年朋友圈用 WechatMoments 导出成了 HTML

上个月准备换新手机时,我把照片、通讯录、聊天记录都备份了一遍,唯独朋友圈一直搁着——微信官方没有批量导出入口,一旦换设备或账号出状况,这几年发的动态就只剩零散截图。朋友推荐了开源项目 WechatMoments,它能把电脑微信里已经浏览过的朋友圈记录导出成可离线打开的 HTML,图片和视频一并下载。我按文档实际操作了一遍,把过程和你可能会踩的坑整理在下面。 ## 先搞清楚导出结果长什么样 动手

gitblog_00564的博客 455

Windows桌面自动化实战:Python+PowerShell+开源AI三步落地

GUI自动化是解决Windows用户高频重复操作的核心技术路径,其本质是将鼠标键盘行为转化为可复用、可编辑的结构化指令流。原理上依赖UI Automation API实现控件语义识别,规避传统坐标定位在DPI缩放与多屏环境下的失效问题;技术价值在于降低使用门槛——无需编程基础即可通过YAML配置或自然语言触发流程;典型应用场景覆盖行政日报提交、IT批量部署、财务数据导出等办公刚需;本文聚焦Python作为跨平台调度引擎、PowerShell深度集成Windows系统API、开源轻量模型(如Phi-3-min

weixin_33834628的博客 353

Python桌面应用开发实战:PyQt5与SQLite构建数据管理工具

桌面应用开发是连接用户与本地数据的重要桥梁,其核心在于构建直观的图形界面并实现可靠的数据持久化。Python作为一门语法简洁、生态丰富的胶水语言,凭借其快速开发迭代能力,成为桌面应用原型开发的理想选择。通过PyQt5这一专业级GUI框架,开发者可以利用其丰富的控件库和成熟的模型-视图架构,高效构建跨平台的现代化界面。而SQLite作为嵌入式数据库,以其零配置、单文件存储和完整SQL支持的特性,完美契合桌面应用对轻量级数据存储的需求。这种技术组合的价值在于,它让开发者能专注于业务逻辑,快速实现从数据处理、界面

weixin_42153793的博客 343

基于飞书API与Python CLI实现AI生成内容自动化同步

在现代软件开发与团队协作中,API集成与自动化工作流是提升效率的关键技术。通过调用平台开放接口,开发者能够将不同工具和服务连接起来,构建端到端的自动化管道。飞书开放平台提供了丰富的REST API,特别是云文档(Drive)接口,允许程序化地创建、读取和更新文档内容。结合Python等脚本语言,可以封装成命令行工具(CLI),实现高度可集成和可脚本化的操作。这种技术方案的核心价值在于打通数据孤岛,将AI工具(如ChatGPT、Cursor)生成的内容(如项目文档、会议纪要)自动同步至飞书等协作平台,从而将内

weixin_33725126的博客 359

Python入门指南:从零搭建环境到核心应用场景解析

编程语言作为人机交互的桥梁,其核心在于将人类逻辑转化为计算机可执行的指令。Python作为一门高级编程语言,以其简洁的语法和动态类型系统,显著降低了编程的入门门槛,实现了代码的高可读性。这种设计哲学使其在工程实践中展现出强大的通用性和灵活性,成为解决实际问题的有效工具。在数据分析领域,Python通过Pandas、NumPy等库高效处理数据,并结合Matplotlib实现可视化,助力从数据中提取洞察。在自动化脚本和网络爬虫方面,Python能轻松应对文件批量处理、系统监控及信息抓取等重复性任务,极大提升工作

weixin_34326429的博客 429
上一篇: Python:pymysql数据库常规操作示例总结
下一篇: Python 实例:手机通讯录(使用GUI图形界面并用mysql记录数据)
锤锤酱
博客等级 码龄6年 83粉丝 97原创
评论 11
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值