《Python编程 从入门到实践》笔记

2018-09-28  本文已影响0人  Anonymous1105

第2章

  1. 变量命名:字母数字下划线,数字不能放前面。
  2. 字符串可用单引号或双引号
  3. name.title()首字母大小写
    name.upper()全大写
    name.lower()全小写
  4. string.strip()删除两端空白
    string.rstrip()删除末尾空白
    string.lstrip()删除开头空白
  5. string.split()将字符串分割成列表,以空格为分隔符
  6. str(age)不能直接打印数字,要将非字符串强制转换为字符串
  7. python2中3/2=1,但3.0/2=1.5,必须包含至少1个浮点数
  8. #注释
  9. import this python之禅

第3章

  1. list[-1]-1返回倒数第1个元素,-2返回倒数第2个元素,依此类推
  2. list.append('abc')添加元素至末尾
    list.insert(0, 'abc')插入元素到指定位置
    del list[0]删除指定元素
    list.pop() list.pop(0)弹出并返回指定元素
    list.remove('abc')根据值删除元素
  3. list.sort()按字母顺序排序
    list.sort(reverse=True)按字母倒序排序
    sorted(list)返回按字母顺序排序的列表
    sorted(list, reverse=True)返回按字母倒序排序的列表
    list.reverse()列表倒序
    len(list)列表长度

第4章

  1. for i in list:i表示单个元素,list表示循环列表
  2. range(10)[0,10)之间的整数的数值列表
    range(1, 5)[1,5)之间的整数的数值列表
    range(2, 11, 2)[2,11)之间每2个数的整数的数值列表
    list(range(1, 5))将数值列表转换为列表
  3. min(list)
    max(list)
    sum(list)
  4. list = [value**2 for value in range(1,11)]列表解析
  5. 切片的不同表示
    list[0:3]
    list[:4]
    list[2:]
    list[:]
    list[-3:]
  6. list1 = list2表示list1list2为同一列表的不同名字
    list1 = list2[:]表示将list2复制到list1
  7. tuple(10, 20)元组(元素不可改变的列表)

第5章

  1. if i in list:i在list中
    if i not in list:i不在list中
  2. if-elif-else多重判断
  3. if list:列表为空时返回False(字符串同理)

第6章

  1. dictionary = {}创建空字典
    dictionary['key'] = value添加键值对
    del dictionary['key']删除键值对
  2. for key, value in dictionary.items():循环键值对
    for key in dictionary.keys():循环键
    for key in sorted(dictionary.keys()):循环按字母顺序排序的键
    for value in dictionary.values():循环值
    for value in set(dictionary.values()):循环剔除重复的值
  3. 列表嵌套字典
    字典嵌套列表
    字典嵌套字典

第7章

  1. age = input(string)string为提示输入字符串
    age = int(age)输入的结果为字符串型,需要强制转换为数值型
  2. while judgement:
    break语句
    continue语句

第8章

  1. 方法
def function(args):
    '''方法注释'''
  1. function(para2 = 'string', para1 = 100)关键字参数不看位置顺序
  2. def function(para = 'string')默认值参数(最好放后面)
  3. function(list)传递实际的列表本身
    function(list[:])传递列表的副本(切片)
  4. 传递特殊的参数
def function(*para): #传递任意数量的参数
def function(**para): #传递任意数量的键值对
    dictionary = {}
    for key, value in para.items():
        dictionary[key] = value
    return dictionary
  1. 导入整个模块
import module
module.function() #需要指明模块
  1. 导入模块中的方法
from module import function1, function2
function1()
function2() #不需要指明模块
  1. import module as m模块的别名
  2. from module import *不需要指明模块,但不推荐使用,容易造成命名冲突

第9章

class Class():
  def __init__(self, para1): #初始方法必须有self参数放在最前面
    self.para1 = para1 #形参赋值给实参
    self.para2 = 100 #每个属性都必须有初始值
    self.object = Object() #可将实例作为类的属性
    (return self) #__init__方法隐式返回所创建的实例
  1. 继承
class Class(Super): #继承类
  def __init__(self, para1):
    super().__init__(para1) #调用父类初始方法,节省代码量
  1. 导入类的方式与导入模块相同

第10章

  1. 文件
filename = 'test.txt'  #Windows使用反斜杠'\',Linux和Mac使用斜杠'/'
file = open(filename) #可选 'r' 'w' 'a' 'r+' 'x' 'b' 't',默认'r'
with open(filename, 'r+') as file: #with让python自动妥善处理何时关闭文件,否则需要手动使用close()关闭文件
    contents = file.read() #末尾返回结尾标识EOL
    lines = file.readlines() #将每行读取到列表lines中
    file.write('string') #文件已存在时将覆盖原有文件
    for line in file: #逐行读取
        print(line)
# file.close() 关闭文件
  1. 异常
try: #只有可能引发异常的代码才需要放在try语句中
    statements
except (FileNotFoundError, ValurError, TypeError): #异常类型可有可无
    pass #有异常。pass表示跳过
else:
    statements #无异常
finally:
    statements #无论有无异常都执行
  1. json
import json
filename = 'test.json'
with open(filename) as file:
    object = json.load(file) #读取
with open(filename, 'w') as file:
    json.dump('string', file) #写入

第11章

  1. 测试
import unittest
class AbcTestCase(unittest.TestCase): #必须继承unittest.TestCase类
    def setUp(self): #优先执行,创建共用的实例或列表
        statements
    def test_abc(self): #以test开头的方法都将自动运行
        statements
    unittest.main() #运行测试
  1. assertEqual(a, b)a==b
    assertNotEqual(a, b)a!=b
    assertTrue(x)x==True
    assertFalse(x)x==False
    assertIn(item, list)item in list
    assertNotIn(item, list)item not in list
上一篇下一篇

猜你喜欢

热点阅读