Python 使用的是python2.7

第一部分 基础

l  输出使用 print 前面不要有空格 因为python是使用空格来对格式进行规范的一种语言

l  可以在输出的东西之间加上 , 这样可以将输出的东西分割开

l  Python里面的注释是#

l  在python中 变量用字母数字和_表示,且不能用数字开头;python的变量是动态变量,即没有给变量赋予变量类型

l  字符串既可以用 ‘’ 也可以 “” 但是如果两者都有,就要用转义字符 \

l  常用转义字符:\n 换行符

l  如果一个字符串包含了很多转义字符,可以在字符串前面加个 r’…’ 但是不能表示多行字符串,也不能表示包含’ and “ 的字符串

l  如果要表示多行字符串,可以用 ‘’’…’’’表示

l  Python中输出中文 前面加u u’…’  多行u’’’…’’’ raw+多行 ur’’’…’’’ 如果遇到错误 可以在py文件第一行添加注释:# -*- coding: utf-8 -*-

l  P.s 在输入注释 # -*- coding:utf-8 -*- 后就不用加u了

l  Python把 0、 空字符’’和None看成false,其他数值和非空字符都看成True

l  And 和 or 运算的一条重要法则:短路计算:

l  在计算 a and b 时,如果a是false,则根据与运算法则,整个结果必定为False, 因此返回a; 如果a是True,则整个额计算结构必定取决与b,因此返回b

l  在计算 a or b时,如果a是true,则根据或运算法则,整个计算结果必定为true,因此返回a;如果a是false,则整个计算结果必定取决与b,因此返回b

l  List L = [..,..,]

l  在list列表后面添加数据 append(), insert(index,…)

l  使用pop() 可以删除List中的元素 pop(index), 返回的是被删掉的元素

l  Tuple和list非常类似,但是tuple一旦创建完毕,就不能修改了;tuple创建用(),tuple不能改变,没有append() 也没有insert() 和 pop() 方法,也不能修改复制

l  Tuple可以包含0个1个或者多个元素,在只有1个元素的时候,要在元素后面加 ,

l  循环语句 if…: 代码块用缩进表示,else: 如果两个判断条件不够 可以用 if… elif…elif…else

l  Dict 中有key和value,用{ key : value}, 可以通过d[key]来查找对应的成绩,但是当key不存在的时候会报错 KeyError,为避免这个,可以使用get

l  Dict查找速度快,内存占用大;key-value对没有顺序;作为key的元素不可变

l  在dict中添加新的key-value直接使用赋值语句,如果key原先就存在,使用赋值语句会替换掉原来的value

l  Set元素里没有重复,而且无序; 创建set的方式是调用set()并传入一个list,list的元素将作为set的元素

l  访问set中某个元素实际上就是判断一个元素是否在set中, 用in判断

l  Set的内部结构和dict很像,唯一区别是不存储value;set存储的元素和dict的key类似,必须是不变对象; 用add()可以直接添加,而remove()前需判断

 

第二部分

逻辑部分

l  For循环

l  While 循环

l  Break退出循环

l  Python还可以多重循环

l  函数:python内置函数:https://docs.python.org/2/library/functions.html

l  定义一个函数 使用def语句,依次写出函数名、括号、括号中的参数和冒号

l  Math包提供了sin()和cos()

l  默认参数 def xx (x, n=1), 由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必须参数的后面

l  可变参数,就是在参数的前面加个*

l  切片L[开始的那个元素:结束的那个元素但是不包含:间隔数,默认为1],支持倒切片

  • 迭代:
  • 在python中,如果要遍历list或者tuple,我们可以通过for来iteration
  • python中,迭代永远是取出元素本身,而不是索引
  • enumerate()自动把每个元素变成(index,element)
  • for index, name in enumerate(L)
  • zip()函数可以把两个list变成一个list
  • zip([10,20,30],['A','B','C']) -->[(10,'A'),(20,'B'), (30,'C')]
  • dict对象本身是可迭代对象,用for循环直接迭代dict, 可以每次拿到dict的一个key
  • 可以通过dict.values() 来迭代dict的value,intervalues和value使用相同
  • values和itervalues两者区别是:values方法实际上把一个dict转换成了包含value的list 但是itervalues()方法不会转换,他会在迭代的过程中依次从dict中取出value,所以itervalues方法比values方法节省了生成list所需的内存
  • items() 方法把dict对象转换成了包含tuple的list,我们对这个list进行迭代,可以同时获得key和value
  • join()方法可以把一个list拼接成一个字符串
  • 列表生成式后面可以加for循环和if 判断
[x * x for x in range(1, 11) if x % 2 == 0]
  • isinstance()可以判断是不是字符串