信息自救[Ongoing][Incomplete]

带有^表示较重要(个人认为)
配合 https://www.bilibili.com/video/BV1bP4y1q7b9/ 使用效果适当提升。


算法的五个特征:有穷性,确定性,可行性,有一个或零个输入,有至少一个输出
描述算法的三种方法:自然语言、流程图、伪代码 以及对这三者的理解

程序设计语言:机器语言->汇编语言->高级语言


^

Python常用数据类型:int整型(整数),float浮点型(小数),str字符串型(一些字符),bool布尔型(真/假),list列表(数据的有序集合)

(不考)可以通过 type(x) 的方法查看x的类型

Python类型转换:int(x) float(x) str(x) 将某数据转换为int/float/str (float->int时是直接取整数部分)

type(1)         <class 'int'>
type("str1")    <class 'str'>
type(-6.7)      <class 'float'>
int (3.6)       3          float->int
int("323")      323        str->int
float(32)       32.0       int->float
float("-6.7")   -6.7        __________(留给读者自己完成)
str(1)          "1"        __________(留给读者自己完成)
str(22333.433)  "22333.433"__________(留给读者自己完成)

^

Python中的常量、变量与赋值符:

  • 常量:123 , -667.7 , “s1ho1h 91a”,e(自然常数)
  • 变量:在程序中可变的量。
  • 变量命名规则:
1. 由大小写英文字母、数字或下划线组成。    
      非法: t&a , ##### , @\_@
2. 以英文字母或下划线为首字符,长度不限.    
      非法: 123d 
3. 不能与 Python 保留字同名.         
      非法: True , import , if 
      (如果Markdown没出问题的话这三个词会有颜色,那就表示这三个词在python中有作用)
4. 大小写敏感。      (例:Apples和apples不是同一个变量)
合法变量名:days,a1_Jj_ , _main , true 
A_wo_zhi_shi_xiang_gao_sui_ni_bian_liang_ming_chang_du_bu_xian

变量的数据类型由被赋值的数据对象的类型决定。

*(不考) 事实上,常见的python自带函数例如print,max,min等均能作为变量名(如图)
但是出于各种情况考虑最好不要使用这些词作为变量名,因为这个函数相当于被代替了。

print(1)报错


^

Python 中的运算符与表达式
1.算术运算符(注意除法)

符号 + - * / // % **
含义 整除(除法,然后取商的整数部分) 取模(带余除法,然后取余数) 乘方

优先级与数学中相同
2. 关系运算符(注意等号相关)

符号 == < > <= => !=
含义 相等 小于 大于 小于等于 大于等于 不等于

3.逻辑运算符

符号 not and or
含义 非(颠倒是非) 与(同真为真,有假则假) 或(同假则假,有真则真)
类比集合 补集 交集 并集

优先级 not>and>or

总优先级:括号 > 算术运算符 > 关系运算符 > 逻辑运算符
表达式由 变量或常量 与 运算符组成

观察下列表达式与它的值

a = 20 #这三个不是表达式
b = 10 #这三个不是表达式
c = 40 #这三个不是表达式
a + b               30
a + b * 2 < c       False
a / ( b + 1 )       1.8181818181818181
c // ( a + b )      1
not c % b == 0      False
not (a >= b) or (c <= 40)     True

Python 中的注释(不考)
在Python中,#开头的视作注释
观察下列代码思考注释的作用
你不需要理解这段代码的具体意思,因为循环嵌套结构不考

#已知发金币规律:1,2,2,3,3,3,4,4,4,4......
#求若发n天金币,一共获得多少
n = int(input()) #表示有多少天
s = 0 #获得的金币数量
days = 1 #一共发了几天的金币
i=1 #今天发几金币
while days <= n:
    j = 1 #已经有几天获得了i金币
    while (j <= i) and (days <= n): #如果还要继续发金币
        s = s + i
        days = days + 1
        j = j + 1
    i = i + 1
print(s)

多在程序中使用注释能让你的代码便于理解,也能在一定程度上帮助你写代码


Python 中的内置函数与模块导入

常用函数 作用 举例
print(x) 将x打印(输出)到屏幕上 \
str1=input() 接受输入的数据到str1中 接受的类型为字符串型str
abs(x) 求绝对值 abs(-1) -> 1
round(a,b) 将小数a四舍五入到小数点后第b位 round(3.146 ,2) -> 3.15
... 待完善 待完善

import 导入某个模块/库

import math #导入math模块
print(math.sqrt(36)) #使用math模块内的函数sqrt求平方根

下面这两段代码与上一段等价

from math import * #导入math模块 所有内容
print(sqrt(36)) 
from math import sqrt #导入math模块中的sqrt函数
print(sqrt(36))

可以通过import xxx as x来给某个模块“取小名”
下面这段代码还是和上一段等价

import math as m
print(m.sqrt(36))

合格考范围内会使用的模块:待完善

名称 作用 常用缩写
math 包含一些数学常量(e,pi),一些数学函数(向上取整ceil(x) 向下取整floor(x) 阶乘factorial(x) )
numpy 包含三角函数sin(),cos(),tan(),求平均值mean(),乘方pow(a,b)等数学函数 np
待完善

^
Python 中的字符串
字符串(str,string)是用单引号(' ')或双引号(" ") 括起来的一串字符,主要用于存储和表示文本,是 Python 中最常用的数据类型之一。计算机中文本的最基本单位是字符,包括可见字符不可见字符(回车、空格等)。

一些可以给字符串使用的符号/函数

用法 作用/含义 举例(以str1="Hello",str2="world"为例) 备注
x+y 将两个字符串拼接 str1+","+str2+"!" 得到 "Hello,world!" 若不同时为字符串则报错(你当然不能让一个字符串+1,但是你可以+"1")
x*n 将字符串x重复n遍 str1*3 得到"HelloHelloHello" 同上,必须一侧为字符串,一侧为整数,否则报错。
len(x) 求字符串x的长度 len(str1) 得到 5 空格记为一个字符 汉字也记为一个字符(不考)
x>y(其他符号同理) 按照字典序比较大小 str1<str2为True "Hello">"h"为False 可能不考,与长度无直接关系,按照ASCII码大小比较

^
Python 中的列表
列表(list)是以一对方括号“[ ]” 包围的数据集合,不同成员间以逗号“,”分隔,它可以把大量的数据放在一起,对其进行集中处理。列表中可以包含任何数据类型,也可以包含另一个列表。我们可以通过序号(index)来访问列表中的成员,list1[0]表示列表的第一个元素(即从0开始数)。
(不知道考不考)事实上,字符串也能用这样的方式来获取第i个字符。

用法 作用/含义 备注
list1+list2 将两个列表拼接 同字符串
list1*n 将列表list1重复n遍 同字符串
len(list1) 求列表list1的长度 同字符串
sum(list1) 求列表list1中各成员的和 只能用于数值相加
max(list1) 求列表list1中各成员中最大值 列表中所有成员类型须相同
min(list1) 求列表list1中各成员中最小值 列表中所有成员类型须相同
list1.append(x) 在列表list1尾部追加成员x
list1.insert(i,x) 在列表list1的第i位插入成员x 即插入后的第i号成员是x ,i 过大(超出列表范围)不会报错,此时等价于append
list1.remove(x) 删除列表list1中等于x的成员 有多个只删去第一个
(一定不考)list1>list2 比较两个列表大小 类似字典序,若list1[i]与list2[i]无法比较则报错

在IDLE(交互环境)下对列表操作的实例代码
image

列表的切片
待完成。


^
顺序、分支、循环结构的 Python实现


^
枚举法 与 枚举法的程序实现


posted @ 2022-12-24 22:51  TPSET  阅读(285)  评论(0编辑  收藏  举报