• defaultdict函数将所有值初始化为指定类型
from collections import defaultdict
a = defaultdict(int)
a[0]
''
  • python按照引用传递
a = [1,2,3]
b = a
a.append(4)
b
[1, 2, 3, 4]
  • isinstance函数检查对象是否为某个特定的类型
a = 7
isinstance(a, float)
False
  • is用来判断两份引用是否指向同一个对象与 == 不同
a = [1,2,3]
b = a
c = list(a)
a is not c
True
  • 字符串左边加上r表示字符应该按原本样子解释
s = r'e\\e'
print(s)
e\\e
  • strftime将时间转化为字符串
  • strptime将字符串转化为时间
from datetime import datetime
a = datetime.now()
a.strftime('%m/%d/%Y %H:%M')
'02/09/2018 21:07'
datetime.strptime('20091009', '%Y%m%d')
datetime.datetime(2009, 10, 9, 0, 0)
  • continue 进入下一个迭代

  • break 结束循环

  • pass 空操作

  • range可以用在for循环中,range始终返回迭代器

a = 0
for i in range(4):
a += i
a
6
  • 三元表达式
x = 5
'positive' if x > 0 else 'negative'
'positive'
  • 元组拆包
tup = (1, 2, 3)
a, b, c = tup
b
2
  • count计算指定值的出现次数
a = (2,3,4,4,4,5)
a.count(4)
3
  • insert、extend、pop与remove、del
  • extend可以添加多个元素
b = ['a', 'b', 'c']
b.append('d')
b
['a', 'b', 'c', 'd']
b.pop(2)
b
['a', 'b', 'd']
b.insert(2, 'c')
b
['a', 'b', 'c', 'd']
b.remove('d')
b
['a', 'b', 'c']
b.extend(('d', 'e'))
b
['a', 'b', 'c', 'd', 'e']
del b[1]
b
  • python切片方式:数中间的空格

  • 切片第二个冒号为步长

za = [1,2,3,4,5]
za[::2]
[1, 3, 5]
za[::-1]
[5, 4, 3, 2, 1]
  • enumerate用法
aa = dict((v, i) for i, v in enumerate(b))
aa
{'e': 1, 'w': 0}
  • 排序
sorted(range(4))
[0, 1, 2, 3]
list(reversed(range(4)))
[3, 2, 1, 0]
  • zip
a = ['a','d']
b = ['w', 'e']
for i in zip(a, b):
print(i)
('a', 'w')
('d', 'e')
c = dict(zip(range(5), reversed(range(5))))
c
{0: 4, 1: 3, 2: 2, 3: 1, 4: 0}
  • 字典的合并update()
c.update({'d' : 'ww'})
c
{0: 4, 1: 'ww', 2: 2, 3: 1, 4: 0, 5: 'ww', 'd': 'ww'}
  • lambda函数
from collections import defaultdict
count = defaultdict(lambda:4)
count['w']
4
strings = ['foo', 'card', 'bar', 'aaaa', 'abab']
strings.sort(key = lambda x : len(set(list(x))))
strings
['aaaa', 'foo', 'abab', 'bar', 'card']
  • 列表推导式
tuples = [(1,2,3), (4,5,6), (7,8,9)]
[x for tup in tuples for x in tup]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[[x for x in tup] for tup in tuples]
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
  • 函数实际接受到的是一个元组*args,和一个字典**kwargs。
somedict = {'a' : 1, 'b' : 2}
for key in somedict:
print(key)
a
b

python学习笔记(一):基础知识点的更多相关文章

  1. Python学习笔记之基础篇(-)python介绍与安装

    Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...

  2. python学习笔记(基础四:模块初识、pyc和PyCodeObject是什么)

    一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...

  3. Python学习笔记:基础

    本文根据廖雪峰的博客,学习整理笔记.主要内容有:基本数据类型,容器数据类型,变量及其作用域,判断及循环语法,函数式编程,面向对象,模块等概念. 数据类型 在python中,能够直接处理的数据类型有以下 ...

  4. Python学习笔记day01--Python基础

    1 python的应用     Python崇尚优美.清晰.简单,是一个优秀并广泛使用的语言.     Python可以应用于众多领域,如:数据分析.组件集成.网络服务.图像处理.数值计算和科学计算等 ...

  5. Python学习笔记之基础篇(二)python入门

    一.pycharm 的下载与安装: 使用教程:https://www.cnblogs.com/jin-xin/articles/9811379.html 破解的方法:http://xianchang. ...

  6. python学习笔记(基础三:if else流程判断、while循环、for循环)

    if else流程判断 getpass在pycharm中无法使用,在命令行窗口中进入python环境可以使用. import getpassusername = input("usernam ...

  7. python学习笔记之基础一(第一天)

    1. python字符介绍 在C语言中没有字符串,只有字符 在python中的字符串hello,在C语言中是以字符数组在内存存放['h','e','l','l','o'],如果对字符串修改,则是在内存 ...

  8. Python学习笔记-Day1-Python基础

    1.python诞生 关于Python的起源,吉多·范罗苏姆在1996年写到: 六 年前,在1989年12月,我在寻找一门“课余”编程项目来打发圣诞节前后的时间.我的办公室会关门,但我有一台家用电脑, ...

  9. Python学习笔记-函数基础

    函数基础 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 为什么使用函数:减少重复代码.使程序变的可扩展使程序变得易维护 1.定义一个函数 #定 ...

  10. python学习笔记之基础数据和控制

    注释: 单行注释 # 多行注释'''    ''' 注意:当注释中有汉字时需要在python文件的第一行添加如下内容之一:#coding:gbk或#coding:utf-8或##-*- coding ...

随机推荐

  1. Python实例---利用正则实现计算器[参考版]

    利用正则进行运算规则的计算 版本一: # import re # # ss = '1 - 2 * ((60 - 30 + (-40/5) * (9 - 2 * 5 / 3 + 7 / 3 * 99 / ...

  2. 省钱小贴士(ECS):教你如何每年省出8w+ 块

    随着用户越来越多地使用阿里云的ECS服务,如何用最小的成本来保有ECS,成为用户越来越重要的关注点. 变更点 为了更好的服务客户,ECS团队调整了系统盘的最小容量限制 linux系统 core os调 ...

  3. 沉淀,再出发:百度地图api的使用浅思

    沉淀,再出发:百度地图api的使用浅思 一.前言   百度地图想必大家都使用过,但是看到别人使用百度地图的API时候是不是一头雾水呢,其实真正明白了其中的意义就像是调用豆瓣电影api的接口一样的简单, ...

  4. matlab中的决策树

    1.函数 view(t)%画出决策树 prune %剪枝决策树 t2=prune(t,'level','level'/'node')%level:0 不剪枝 1 剪掉最后一层 2 最后两层%node: ...

  5. 组合数计算-java

    排列组合是计算应用经常使用的算法,通常使用递归的方式计算,但是由于n!的过于大,暴力计算很不明智.一般使用以下两种方式计算. 一,递归的思想:假设m中取n个数计算排列组合数,表示为comb(m,n). ...

  6. The good life is one inspired by love and guided by knowledge

    The good life is one inspired by love and guided by knowledge 伯特兰·罗素Bertrand Russell18721970 I can a ...

  7. ajax获取json形式得题目和答案 实现答题功能

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  8. POJ3690 Constellations

    嘟嘟嘟 哈希 刚开始我一直在想二维哈希,但发现如果还是按行列枚举的话会破坏子矩阵的性质.也就是说,这个哈希只能维护一维的子区间的哈希值. 所以我就开了个二维数组\(has_{i, j}\)表示原矩阵\ ...

  9. 3、Web Service-Jaxws(Eclipse版本)

    1.概述 开发手段: 使用jdk开发(1.6及以上的版本) 使用CXF框架开发 组成: -服务器端 -客户端 2.使用JDK开发 1).服务器端 -@WebService(SEI和SEI的实现类) - ...

  10. jquery 中 attr 和 prop 的区别

    问题:在jQuery引入prop方法后,什么时候使用attr,什么时候使用prop,两者区别. 判断: 对于HTML元素本身所有的固有属性,在处理的时候,使用prop方法 对于HTML元素后来我们自己 ...