当前位置:   article > 正文

《Python基础教程(第三版)》阅读笔记暨Python3入门基础教程_python for everyone 第三版

python for everyone 第三版

第一章、快速上手:基础知识

  1. '''
  2. 第一章:基础知识
  3. 1、python无需加分号,加了也无所谓
  4. 2、Python / 除法的结果为浮点数,如果想要整除则要使用//,整除会向下取整,也就是:
  5. 10//-3 ==-4
  6. 3、Python3中,所有的字符串都是Unicode字符串
  7. '''
  8. # 幂运算
  9. 2**4
  10. '''
  11. # 获取用户输入
  12. x=input("x:") #此时x为字符串
  13. y=input("y:")
  14. print(int(x)*int(y))
  15. '''
  16. # 可使用变量来引用函数
  17. import math
  18. foo=math.sqrt
  19. print(foo(9))
  20. #原始字符串,会在字符串中包含任何字符,原始字符串的最后一个字符不能是反斜杠
  21. print(r"C:\nowhere")
  22. #字符串的编码
  23. #最好使用UTF-8,实际上它也是默认的编码
  24. "Hello,World!".encode("ASCII")
  25. "Hello,World!".encode("UTF-8")
  26. "Hello,World!".encode("UTF-32")
  27. '''
  28. 函数速查:
  29. pow(a,b) 幂运算
  30. abs() 绝对值
  31. round() 圆整到最接近的整数,并在两个整数一样接近时圆整到偶数,相当于四舍五入
  32. math.floor() 向下取整,要import math
  33. math.ceil() 向上取整
  34. sqrt() 计算平方根 需要from math import sqrt
  35. '''

第二章、列表和元组

1、列表是可以修改的,而元组不可以

2、列表的访问方式:

  1. numbers=[1,2,3,4,5,6,7,8,9,10]
  2. print(numbers[5]) #索引 结果为6
  3. print(numbers[3:-3]) #切片 结果为[4,5,6,7]
  4. print(numbers[1:9:2]) #以步长为2进行提取 结果为[2,4,6,8]
  5. print(numbers[5:1:-1]) #从右往左提取元素,结果为[6,5,4,3]

3、列表具有加法和乘法,

  1. >>> 'python' * 5
  2. 'pythonpythonpythonpythonpython'
  3. >>> [42] * 10
  4. [42, 42, 42, 42, 42, 42, 42, 42, 42, 42]

4、成员资格

使用运算符in可以判断某元素是否在某列表里,返回结果为布尔值

  1. >>> permissions = 'rw'
  2. >>> 'w' in permissions
  3. True
  4. database = [
  5. ['albert', '1234'],
  6. ['dilbert', '4242'],
  7. ['smith', '7524'],
  8. ['jones', '9843']
  9. ]
  10. username="jones"
  11. pin="9843"
  12. if [username, pin] in database: print('Access granted')

5、内置函数len、max、min可以获取列表的长度、最大值、最小值

6、删除元素

  1. >>> names = ['Alice', 'Beth', 'Cecil', 'Dee-Dee', 'Earl']
  2. >>> del names[2]
  3. >>> names
  4. ['Alice', 'Beth', 'Dee-Dee', 'Earl']

7、给切片赋值

通过切片赋值的方式可以替换为长度与其不同的序列

  1. >>> name = list('Perl')
  2. >>> name[1:] = list('ython')
  3. >>> name
  4. ['P', 'y', 't', 'h', 'o', 'n']

通过切片还可以在不替换原有元素的情况下插入新元素

  1. >>> numbers = [1, 5]
  2. >>> numbers[1:1] = [2, 3, 4]
  3. >>> numbers
  4. [1, 2, 3, 4, 5]

8、列表方法

  1. append() #在列表末尾添加对象
  2. extend() #同时将多个对象附加到列表末尾
  3. clear() #清空列表的内容
  4. count() #计算指定元素在列表中出现了多少次
  5. index() #在列表中查找指定值第一次出现的索引
  6. insert() #将一个对象插入列表
  7. pop() #从末尾删除一个元素并返回这个元素
  8. remove() #删除第一个为指定值的元素,注意,如果不存在指定的元素,将会报错
  9. >>> x = ['to', 'be', 'or', 'not', 'to', 'be']
  10. >>> x.remove('be')
  11. >>> x
  12. ['to', 'or', 'not', 'to', 'be']
  13. reverse() #倒序
  14. sort() #排序 两者都只是修改列表,但返回None
  15. #其他
  16. list(seq) #将序列转换为列表
  17. tuple(seq) #将序列转换为元组

第三章、使用字符串

1、字符串的基本操作

所有标准序列操作都适用于字符串,但是字符串是不可变的,所以所有的元素赋值和切片赋值都是非法的

2、超精简版的设置字符串的格式

  1. >>> "{3} {0} {2} {1} {3} {0}".format("be", "not", "or", "to")
  2. 'to be or not to be'

3、字符串方法

  1. center() #通过在两边添加填充字符(默认为空格)让字符串居中
  2. >>> "The Middle by Jimmy Eat World".center(39, "*")
  3. '*****The Middle by Jimmy Eat World*****'
  4. find #在字符串中查找子串,如果找到则返回第一个字符的索引,否则返回-1
  5. #相关方法:rfind、 index、 rindex、 count、 startswith、 endswith
  6. join #其作用与split相反,用于合并序列的元素
  7. >>> dirs = '', 'usr', 'bin', 'env'
  8. >>> '/'.join(dirs)
  9. '/usr/bin/env
  10. lower #返回字符串的小写版本
  11. replace #将指定子串都替换为另一个字符串,并返回替换后的结果
  12. >>>'This is a test'.replace('is', 'eez')
  13. 'Theez eez a test'
  14. split #与join相反,用于将字符串拆分为序列
  15. >>> '/usr/bin/env'.split('/')
  16. ['', 'usr', 'bin', 'env']
  17. strip #将字符串开头和末尾的空白删除,并返回删除后的结果。还可以指定删除那些字符
  18. >>> '*** SPAM * for * everyone!!! ***'.strip(' *!')
  19. 'SPAM * for * everyone'
  20. #判断字符串是否满足特定的条件
  21. isalnum、 isalpha、 isdecimal、 isdigit、 isidentifier、 islower、 isnumeric、
  22. isprintable、 isspace、 istitle、 isupper

第四章、当索引行不通时

1、创建和使用字典

phonebook = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

2、函数dict

从其他映射或键值对序列创建字典

  1. >>> items = [('name', 'Gumby'), ('age', 42)]
  2. >>> d = dict(items)
  3. >>> d
  4. {'age': 42, 'name': 'Gumby'}
  5. >>> d['name']
  6. 'Gumby'

3、字典方法

  1. clear #删除所有的字典项,所有指向同一个字典的变量都将为空
  2. copy #返回一个新字典,但是这个方法执行的是浅拷贝
  3. from copy import deepcopy
  4. dc = deepcopy(d) #深拷贝
  5. fromkeys #创建一个新字典,其中包含指定的键,且每个键对应的值都是None
  6. get #根据键来获取值,如果不存在则返回None,比[]更安全
  7. pop #根据指定键删除键值对
  8. popitem #随机地弹出一个字典项

第五章、条件、循环及其他语句

1、python缩进标准也是最佳的做法是只使用空格(而不使用制表符),且每级缩进4个空格。

2、==用来检查两个对象是否相等,而is用来检查两个对象是否相同

3、pass 什么都不做,del 删除对象,exec用于将字符串作为python程序执行,函数eval计算用字符串表达的表达式并返回结果。

第六章、抽象

1、带*号的参数用于收集剩下的参数

  1. def print_params_2(title, *params):
  2. print(title)
  3. print(params)
  4. >>> print_params_2('Params:', 1, 2, 3)
  5. Params:
  6. (1, 2, 3)

第七章、再谈抽象

1、要让方法或属性成为私有的,只需让其名称以两个下划线打头即可

2、Python分为类属性和实例属性,类属性在__init__()外初始化,相当于C++中的静态成员变量。实例属性相当于C++的成员变量。

3、抽象基类

  1. from abc import ABC, abstractmethod
  2. class Talker(ABC):
  3. @abstractmethod
  4. def talk(self):
  5. pass

第八章、异常

1、捕获异常

  1. try:
  2. x = int(input('Enter the first number: '))
  3. y = int(input('Enter the second number: '))
  4. print(x / y)
  5. except ZeroDivisionError:
  6. print("The second number can't be zero!")

第九章、魔法方法、特性和迭代器

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/721040
推荐阅读
相关标签
  

闽ICP备14008679号