Python奇思妙想(胡思乱想)
1.一道简单习题引发的思考深坑(通过globals及字典推导式获取类实例化了哪些对象)
初衷就是为了打印如下的信息:
小明,10岁,男,最爱大保健
小明,10岁,男,开车去东北
小明,10岁,男,最爱大保健
老李,90岁,男,最爱大保健
老李,90岁,男,开车去东北
老李,90岁,男,最爱大保健
考察的就是类对象调用类的静态字段及对象属性和对象方法;但是我头铁,非要获取这个类都实例化了哪些个对象,都添加到一个容器,让他们循环打印。如此便有了如下的尝试,最终get了通过globals及字典推导式完美解决。
class Person:
hobby_lst = ['最爱大保健', '开车去东北', '最爱大保健'] def __init__(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex xm = Person('小明', '10岁', '男')
ll = Person('老李', '90岁', '男')
lz = Person('老张', '108岁', '男仙')
jj = Person('俊杰', '30岁', '男')
dic = globals() # 获取全局的所有变量及方法
# lst = [i for i in dic if isinstance(dic[i], Person)]#开始天真的以为拿到每个对象名就好了,后来发现你拿到的是字符串,并不能调用对象的属性
dic1 = {k: v for k, v in dic.items() if isinstance(dic[k], Person)} # 故而改成了字典里面为对象名的字符串对应它的内存地址,这下就可以玩了
for i in dic1.values():
for j in Person.hobby_lst:
print(f'{i.name},{i.age},{i.sex},{j}')
不玩不知道,都是坑
Python奇思妙想(胡思乱想)的更多相关文章
- python之奇思妙想
一.概述 本篇主要介绍自己平常所遇到的各种有趣的关于python的简短例子 二.正文 chapter 1 解决思路: s='{:,.2f}'.format(100000.0) print(s) cod ...
- 一个 11 行 Python 代码实现的神经网络
一个 11 行 Python 代码实现的神经网络 2015/12/02 · 实践项目 · 15 评论· 神经网络 分享到:18 本文由 伯乐在线 - 耶鲁怕冷 翻译,Namco 校稿.未经许可,禁止转 ...
- C,java,Python,这些名字背后的江湖!
还记得高中的时候,有一次我们计算机老师问我们班要不要去参加市里面的C语言比赛,当时还小的我对编程世界压根就一片空白.那时候我就想啊,为什么是C语言,那么A语言,B语言或者是D语言又是什么呢? 后来就到 ...
- Python语言程序设计学习 之 了解Python
Python简介 Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python是纯粹的自由软件,源代 ...
- python学习 -女神或者男神把微信消息撤回后好慌,有了这个妈妈再也不担心你看不到女神或者男神撤回的消息了(超详解)
简介 有时候在忙工作,女朋友发了一个消息,就撤回了,但是人天生的都有一颗好奇心,而且在当今这个时代找个女朋友不容易,一个程序猿找一个女朋友更是不容易的.人家好不容易跟你,你还不得把人家当老佛爷侍候着, ...
- 推荐书单(网课)-人生/编程/Python/机器学习-130本
目录 总计(130本) 一.在读 二.将读 三.已读 非专业书单(77本) 四.已读 专业书单(53本) 五.已看网课(8个) 六.在看网课 一个人如果抱着义务的意识去读书,便不了解读书的艺术.--林 ...
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
随机推荐
- 2017-2018-2 20155234『网络对抗技术』Exp6:信息收集与漏洞扫描
whois查询 whois用来进行域名注册信息查询.以常用的百度为例,输入whois baidu.com可查询到3R注册信息,包括注册人的姓名.组织和城市等信息. 我们可以很清楚地看到baidu的3R ...
- 20155302《网络对抗》Exp4 恶意代码分析
20155302<网络对抗>Exp4 恶意代码分析 实验要求 •是监控你自己系统的运行状态,看有没有可疑的程序在运行. •是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件:分析工 ...
- Exp8 web基础
20155332<网络对抗>Exp5 MSF基础应用 1.实验环境搭建 1.apache的安装与配置 安装:sudo apt-get install apache2 开启:service ...
- Android开发——高斯模糊效果的简单实现
0. 前言 在Android开发中,经常在音乐软件中看到高斯模糊效果. 在找遍了所有高斯模糊的算法代码后,发现stackblur的Java实现是最快的.效果如下所示. 1. 高斯模糊效果实现 Bit ...
- 小内存VPS apache并发控制参数prefork调优
小内存VPS优化(使用wdcp lnamp一键包安装环境的情况下): 1.主要优化perfork模式下几个参数,防止开启过多的httpd进程占用大量内存导致内存满:在wdcp下修改的httpd配置文件 ...
- SQL 追踪
SQL追踪(SQL Trace)是一个轻量级的追踪工具,按照事件(Events)记录数据库发生的消息,几乎对数据库性能没有什么影响.SQL Server内置一个Trace,称作默认追踪(Default ...
- 接口自动化学习--testNG
一个月一更的节奏~ testNg是一个开源的自动化测试框架..具体那些什么特点的就不想打了- -,贴张图(虽然也看不懂): 学习网站:https://www.yiibai.com/testng 一样是 ...
- 红黑树的删除详解与思路分析——不同于教科书上的算法(dart语言实现)
对于红黑树的删除,看了数据结构的书,也看了很多网上的讲解和实现,但都不满意.很多讲解都是囫囵吞枣,知其然,不知其所以然,讲的晦涩难懂. 红黑树是平衡二叉树的一种,其删除算法是比较复杂的,因为删除后还要 ...
- 日本厚劳省对IT技术人员展开确保海外人才调查
新浪美股讯 5月13日消息,共同社报道,日本厚生劳动省将开始对在国内工作的外国籍系统工程师(SE)及程序员的劳动条件进行实际状况调查.为避免在与海外的人才获取竞争中败北,希望掌握接纳企业的需求等推动企 ...
- 作业要求20160901 从edu.cnblogs.com中抄过来的,备忘
[已完成] 杨贵福 发布于 2016-09-01 21:51 开通技术博客,博客园 cnblogs 关注 杨贵福 younggift,回贴 "构建之法东北师大站,继续 2016秋" ...