用import关键字导入模块的几种方式:

#python是自解释的,不必多说,代码本身就是人可读的

import xxx
from xxx import xxx
from xxx import xx1,xx2,xx3
from xxx import *
import xxx as xxx
from xxx import xxx as xxx

序列解包赋值:

x,y,z = 1,2,3    #右侧1,2,3实际是一个(1,2,3)的tuple,然后解包出来再分别赋值

x,y = y,x            #同理,交换赋值

if和布尔:

#True False 实际就是1 0 同样可拿来运算
True + 1 == 2
False - 1 == -1 #bool(xx): #将表达式转换为布尔值
'''注意:'''#虽然[]与{}都是假值,但是他俩之间直接比较是不相等的
[] != {}
#这样才相等
bool([]) == bool({}) == False #比较运算符:
x is y #x与y是同一个对象引用
x is not y #同上一个道理
#is 关键字比较的是同一性,==比较的是相等性 #可以连续比较:
1<2<3 == 1<2 and 2<3 #布尔运算符:
and or not #模拟bool:a?b的三元运算符
#方法1
(bool and [a] or [b])[0]
#首先知道,[a] [b]都是真值
#当bool为True时,and 运算结果为[a],or运算结果也为[a],再[0]取出a
#当bool为False时,and结果为False,or结果取决于[b],再[0]取出b #方法2
a if b else c #b 为1时,则a 否则c

循环:

#for 多用于序列或可迭代对象

range(a, b):
#包含下限不含上限,生成列表 zip(list1, list2);
#将两个序列压缩在一起,形如:[(list1[1],list2[1]),(list1[2],list2[2])]
#长度不同时取短的那个 while True/if break:
#很好用,代码整洁又没有重复 for/else:
for n in range(10):
if xxx:
break
else:
#dosomething

强调一个内建函数:

#强调一个内建函数 getattr
l = [1,2,3,4]
l.pop() func = getattr(l, 'pop')
func() #上面两小段代码是一样的效果 都是弹出最后的元素 #getattr字面就是返回属性,返回 参数 l 的 pop 属性

python 零散记录(五) import的几种方式 序列解包 条件和循环 强调getattr内建函数的更多相关文章

  1. 命令行运行Python脚本时传入参数的三种方式

    原文链接:命令行运行Python脚本时传入参数的三种方式(原文的几处错误在此已纠正) 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. pyth ...

  2. Python中的可变、不可变对象和赋值技巧序列解包

    可变对象和不可变对象 在python中一切皆对象.在Python中不存在所谓的值传递调用,一切传递都是对象的引用,也可认为是传址. python中,对象分为可变(mutable)和不可变(immuta ...

  3. 多表连接的三种方式详解 hash join、merge join、 nested loop

    在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式.多表之间的连接有三种方式:Nested Loops,Hash Join 和 Sort Merge Join.具体适用哪 ...

  4. Python——序列封包与序列解包

    一.序列封包与序列解包 把多个值赋给一个变量时,Python会自动的把多个值封装成元组,称为序列封包. 把一个序列(列表.元组.字符串等)直接赋给多个变量,此时会把序列中的各个元素依次赋值给每个变量, ...

  5. Python特色的序列解包、链式赋值、链式比较

    一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...

  6. 第4.7节 Python特色的序列解包、链式赋值、链式比较

    一.序列解包 序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中. 一般情况下要解包的序列包含的元素个数必须与你在等 ...

  7. python 序列解包(解压缩)

    序列解包(解压缩) 所学的解压缩 如果我们给出一个列表,我们需要一次性取出多个值,我们是不是可以用下面的方式实现呢? name_list = ['nick', 'egon', 'jason'] x = ...

  8. Python中序列解包与函数的参数收集之间的关系

    在<第4.7节 Python特色的序列解包.链式赋值.链式比较>中老猿介绍了序列解包,<第5.2节 Python中带星号的函数参数实现参数收集>介绍了函数的参数收集,实际上函数 ...

  9. 在python中元组与列表的区别及序列解包

    一. 元组与列表的区别 元组中的数据一旦定义就不允许更改. 元组没有append().extend()和insert()等方法,无法向元组中添加元素. 元组没有remove()或pop()方法,也无法 ...

随机推荐

  1. C/C++中memset函数

    本文学习参考http://baike.baidu.com/link?url=ZmSyY8ciB_nJt9KM-W2fiEFJrC2mugFsLqRdY2b4pLe8rD_jRXyN7_pj0GBBD2 ...

  2. (hdu)1042 N! 大数相乘

    题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=1042 Problem Description Given an integer N( ≤ ...

  3. 关于C++对汉字拼音的处理——终结篇

    以前写过了3个博文,都是关于汉字转拼音的,后来发现都不是很“完美”的解决方案,第一个和第二个利用的unicode编码的范围进行确定汉字的拼音,但是难免有遗漏,这个在后面的实践中发现的,后来第三个方法是 ...

  4. You have new mail in /var/spool/mail/root 烦不烦你(转)

    转自(http://blog.csdn.net/yx_l128125/article/details/7425182) 有时在进入系统的时候经常提示You have new mail in /var/ ...

  5. 高效线程池之无锁化实现(Linux C)

    from:http://blog.csdn.net/xhjcehust/article/details/45844901 笔者之前练手写过一个小的线程池版本(已上传至https://github.co ...

  6. 关于DPC和workitem的简单用法

    这个随笔是记录我半个月左右的时间,从想法到查资料请教,以及到实践的成果. 我想实现的是,隔定时时间写文件,本以为调用写的函数就可以实现了,结果各种BSOD,IRQL_NOT_LESS_OR_EQUAL ...

  7. iOS 9适配技巧

    中文快速导航: 1.iOS9网络适配_ATS:改用更安全的HTTPS(见Demo1) i. WHAT(什么是SSL/TLS?跟HTTP和HTTPS有什么关系) ii. WHY(以前的HTTP不是也能用 ...

  8. vs2010 使用SignalR 提高B2C商城用户体验(三)

    vs2010 使用SignalR 提高B2C商城用户体验(三) 上一章节,我们的web即时通讯已经可以实现跨域了,但针对我们的需求,还希望,一些客户端程序可以和我们的web用户,在线聊天,所以到Sig ...

  9. python学习之--自定义函数:

    Python之--自定义函数: 在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回. 以下自定义 ...

  10. bzoj 1209: [HNOI2004]最佳包裹 三维凸包

    1209: [HNOI2004]最佳包裹 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 160  Solved: 58[Submit][Status] ...