《可爱的Python》读书笔记(一)

2023-01-31 05:01:00 python 读书笔记 可爱

Just use it! don't learn!——只用,不学!


无意间了解到《可爱的python》就被它的名字所吸引。查了书评得知这本书是有争议的,有人觉得书中很多都是点到为止不适合新手入门,处处给读者挖坑,结构混乱更不能作为参考书。有人认为此书从实用出发,正符合Python意旨,适合培养读者的自学能力。

带着这些疑问和好奇,我决定开始入手它。


刚开始作者就抛出了本书的观点“用之!不学!”。故事围绕代表读者的“小白”为实例故事,同代表作者的“行者”沟通,引导式的解决遇到的问题。

首先是非常著名Hello World!让我们和python打声招呼:

>>> print('Hello Pythonic World!')
Hello Pythonic World!


小白想要解决的问题:不用插入光盘就可以搜索所有光盘的内容。

行者的建言:明晰你的问题,当问题真正得到定义时,问题已经解决了一半。

描述问题:先将光盘内容储存到硬盘上,再根据储存到硬盘上的光盘信息进行搜索。


小练习:

# -*- coding: utf-8 -*-
#1.计算今年是否是闰年。判断闰年条件,满足年份模400为0或者模4为0但模100不为0
import datetime
year = datetime.datetime.now().year  # 获取当前年份
'''
也可以这样获取当前年份
import time
year = time.localtime()[0]
'''
if year % 400 == 0 or year % 4 == 0 and year % 100 != 0:
    print('当前年份{}是闰年'.fORMat(year))
else:
    print('当前年份{}不是闰年'.format(year))

>>>
当前年份2018不是闰年

#2.利用Python作为科学计算器的特性,利用math模块进行数学计算,分别求出145/23的余数,0.5的sin和cos值(注意sin和cos中的参数是弧度制表示法)
#提示:可通过 import math; help( "math" ) 查看 math 帮助。
import math
print('145/23 的余数 = %d' % math.fmod(145, 23))
print('sin(0.5) = %f' % math.sin(0.5))
print('math.cos(0.5) = %f' % math.cos(0.5))

>>>
145/23 的余数 = 7
sin(0.5) = 0.479426
math.cos(0.5) = 0.877583

#3. 找出 0~100 的所有素数(质数)
#一个大于1的自然数,除了1和它自身外,不能被其他自然数整除
#在一般领域,对正整数n,如果用2到根号n之间的所有整数去除,均无法整除,则n为质数
#使用列表推导式
prime_number = [n for n in range(2, 100) if 0 not in [n % i for i in range(2, int(math.sqrt(n))+1)]]
print(prime_number)

>>>
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

如此体现了Python是个强大的科学计算器。


总结:第一节主要是定下了本书的基调。提出了明晰问题的重要性。整体看了一下书的结构,本书把故事写在正文,对遇到的问题都不进行深入的讲解,而是点到为止。提醒读者自行查看页边的各种引导和提示,作者的立意应该是引导读者独立学习

相关文章