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

第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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,080评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,422评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,630评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,554评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,662评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,856评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,014评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,752评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,212评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,541评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,687评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,347评论 4 331
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,973评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,777评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,006评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,406评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,576评论 2 349

推荐阅读更多精彩内容