0
点赞
收藏
分享

微信扫一扫

《Python编程从入门到实践》day37

快乐码农Alan007 2024-05-24 阅读 27

文章目录


Input & Output

在这里插入图片描述

Variables & Data types

str: a string represents a sequence of characters.
int: an integer, a whole number
float: a decimal number
bool: a boolean value is either True or False.
Date data type: including year, month, day, (not the time)
Date-time data type: including year, month, day, hour, minute, second, …

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Python字符串重复(字符串乘法)

在这里插入图片描述

字符串和数字连接在一起print时,要强制类型转换int为str

在这里插入图片描述

在这里插入图片描述

用input()得到的用户输入,是str类型,如果要以int形式计算的话,需要强制类型转换为int

在这里插入图片描述

我们可以只使用一个变量user_input来节省内存

在这里插入图片描述

convert string type to date type

strptime
在这里插入图片描述

convert date to string

strftime
在这里插入图片描述

Multi-line code statement 换行符

在这里插入图片描述

在括号内,行的延续的自动的

Line continuation is automatic when the split comes while a
statement is inside parenthesis ( , brackets [ or braces {
在这里插入图片描述

Escape sequence 转义字符

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

String format

在这里插入图片描述
在这里插入图片描述

格式意义
<15left alignment, using 15 spaces
^25center alignment, using 25 spaces
>15right alignment, using 15 spaces

string format 中限制输入占位大小的同时小数点后位数

在这里插入图片描述
还可以通过这种方式实现四舍五入取整
.0f
在这里插入图片描述

Arithmetic operators

Floor division = 地板除 = 向下取整除
在这里插入图片描述
floor division地板除是什么意思
向下取整除,就是地板除 floor division
向上取整除,就是天花板除,ceil division

来自 https://zhuanlan.zhihu.com/p/221901326
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Fundamentals of the Analysis of Algorithm Efficiency

Algorithm analysis framework 算法分析框架

Analysis of algorithms means to investigate an algorithm’s efficiency with respect to resources: running time and memory space
算法分析是指研究一个算法在资源方面的效率:运行时间和内存空间。
在这里插入图片描述

1. Measuring Input Sizes

Efficiency is defined as a function of input size.
F(n)

2. Units for Measuring Running Time

Count the number of times an algorithm’s basic operation is executed
计算一个算法的基本操作被执行的次数
Basic operation: the operation that contributes the most to the total
running time.
例如,基本操作通常是算法最内部循环中最耗时的操作。

3. Order of growth

在这里插入图片描述
在这里插入图片描述

4. Worst-Case, Best-Case, and Average-Case Efficiency

在这里插入图片描述
==Efficiency (# of times the basic operation will be executed) ==
在这里插入图片描述

Average case:
Efficiency (#of times the basic operation will be executed) for a typical/random
input of size n. NOT the average of worst and best case. How to find the
average case efficiency?
平均情况。对于大小为n的典型/随机输入的效率(基本操作将被执行的次数),而不是最坏和最好情况的平均值。如何找到平均案例的效率?

Summary

在这里插入图片描述
算法的运行时间(空间)随着其输入大小的增加而增长的阶数为无穷大。
对于相同大小的输入,一些算法的效率可能有很大的不同

渐进式符号

在这里插入图片描述

no faster

在这里插入图片描述
在这里插入图片描述

at least as fast as

在这里插入图片描述
在这里插入图片描述

at same rate

在这里插入图片描述
在这里插入图片描述

Summary

在这里插入图片描述

Some Properties

在这里插入图片描述
在这里插入图片描述
意义:算法的整体效率将由增长顺序较大的部分决定。

Using Limits for Comparing Orders of Growth

在这里插入图片描述
在这里插入图片描述

所有的对数函数loga n都属于同一个类别
所有相同度数k的多项式都属于同一类别
指数函数对于不同的a有不同的增长顺序
在这里插入图片描述
在这里插入图片描述

Analysis of non-recursive algorithms 非递归算法的分析

在这里插入图片描述

Analysis of recursive algorithms 递归算法的分析

在这里插入图片描述

  • 计算递归调用的次数
  • 解决递归问题,或通过后向替代或其他方法估计解决方案的数量级

Examples

求n!

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

重要的递归类型

在这里插入图片描述
在这里插入图片描述

For-loop

在这里插入图片描述
range(0,10) 范围是左闭右开

字符串操作

字符串内容大写/小写

在这里插入图片描述
.upper()
.lower()

找字串位置,找不到返回-1

在这里插入图片描述

字符串长度

在这里插入图片描述

根据下标返回字符串中对应字符

在这里插入图片描述

切割字符串

在这里插入图片描述
[i:j] 范围左开右闭,从下标为i的字符到下标为j-1的字符,获得的子串长度为j-i

Data Structure

data, relationship , operation
在这里插入图片描述

Abstract data type (ADT)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Function 函数

在这里插入图片描述
在这里插入图片描述

四舍五入保留小数点后多少位函数

在这里插入图片描述

min,max函数是python内置的

在这里插入图片描述

random函数

在这里插入图片描述
左闭右闭

举报

相关推荐

0 条评论