计算机最底层是 电子电路. 只能识别两个数 0 1

2. python的简介

解释型语言. 弱类型语言

3. 安装

4. hello world

print("你好啊. 我是周润发")

5. 变量(命名规则)

命名规则;

1. 由数字, 字母, 下划线组成

2. 不能数字开头. 更不能是纯数字

3. 不能是关键字

4. 不要太长

5. 不要用中文

6. 区分大小写

7. 要有意义

8. 驼峰和下划线命名

常量: 全部字母大写常量. 约定俗成

6. 数据类型

1. int整数. +-*/% //整除, > < >= <= !=

2. str字符串. 用',",''',""" 引起来的都是字符串 + *

3. bool 布尔值. 只有True和False两个值

7. 用户交互(input)

变量=input("提示语") 变量是字符串类型, 字符串=> 数字 => int(str)

8. if判断

最基本用法

if 条件判断:

代码块

运行流程. 当条件是真. 执行代码块

if 条件:

代码块1

else:

代码块2

执行流程: 当条件成立. 执行代码块1. 否则, 执行代码块2. 二选一

if 条件1:

代码块1

elif 条件2:

代码块2

.....

else:

代码块n

执行流程: 自行补全

day02

主要内容

1. 循环. while循环

while 条件:

代码块(循环体)

执行流程:

1. 判断条件是否为真. 如果真. 执行代码块

2. 再次判断条件是否为真......

3. 当条件为假.执行else 跳出循环. 循环结束

2. 格式化输出

%s: 字符串的占位符, 可以放置任何内容(数字)

%d: 数字的占位符

3. 运算符

逻辑运算:

and 并且的意思. 左右两端的值必须都是真. 运算结果才是真

or 或者的意思. 左右两端有一个是真的. 结果就是真. 全部是假. 结果才能是假

not 非的意思. 原来是假. 现在是真. 非真即假, 非假既真

break 结束循环. 停止当前本层循环

continue 结束当前本次循环. 继续执行下一次循环

4. while..else

while 条件:

代码块

else:

当条件为假的时候执行

day03

今日主要内容

1. 编码

1. 最早的计算机编码是ASCII. 美国人创建的. 包含了英文字母(大写字母, 小写字母). 数字, 标点等特殊字符!@#$%

128个码位 2**7 在此基础上加了一位 2**8

8位. 1个字节(byte)

2. GBK 国标码 16位. 2个字节(双字节字符)

3. unicode 万国码 32位, 4个字节

4. utf-8: 英文 8 bit 1个字节

欧洲文字 16bit 2个字节

中文 24bit 3个字节

8bit => 1 byte

1024 byte = > 1kb

1024 kb => 1mb

1024mb => 1gb

1024gb = > 1tb

2. 基本数据类型的概述

int 整数

str 字符串, 存储少量的数据

bool 布尔

list 列表, ["大阳哥", "东阳哥", ]

tuple 元组. 只读列表, 不能改

dict 字典; 一对一对的存储数据. key:value {"赵阳":"大阳哥", 'jay':"周杰伦"}

set 集合. 存储不重复的内容

3. int, bool, str

int 方法操作:

bit_length() 求二进制长度

bool: 类型转换

1. 你想转换成什么. 就用什么把目标包裹起来

2. 带空的是False, 不带空的True

str

1. str索引和切片:

索引:起始下标是0(从左到右), (-1)从右到左

切片: s[起始位置: 结束位置: 步长]

特点:顾头不顾尾

2. 字符串的常用操作: 常用方法

字符串不可变.

1. upper() 转换成大写

2. strip() 去掉空格

3. replace() 替换

4. split() 切割

5. format() 格式化输出

6. startswith() 判断是否以xxx开头

7. find() 查找. 找不到返回-1

8. len() 内置函数. 直接使用. 不用点操作 求字符串的长度

3. 迭代

for 变量 in 可迭代对象:

循环体

else:

day04

今日主要内容

1. list(增删改查)

列表可以装大量的数据. 不限制数据类型. 表示方式:[] 方括号中的每一项用逗号隔开

列表和字符串一样.也有索引和切片

常用的功能:

1. 增: append()

2. 删:remove()

3. 改: 索引修改

4. 查: for循环

常用方法:

1. len()

2. count()

3. sort() 排序

2. list的嵌套

降维操作

3. tuple 元组

不可变的列表. 只读列表. 有索引和切片.

不可变的是它内部子元素. 如果子元素是列表. 列表中的元素是可以变的.

4. range()

数数

有一个参数:结束为止

两个参数: 1. 起始位置, 2.结束位置

三个参数: 1. 起始位置, 2. 结束位置. 3.步长

day05

今日主要内容

1. dict

用大括号{} 括起来. 内部使用key:value的形式来保存数据

{'jay':'周杰伦', "jj":'林俊杰'}

注意:字典的key必须是可哈希的. 不可变的, value 没有限制

不是按照我们保存的顺序保存的, 无序的

2. 增删改查

1. dict[不存在的key] = value, setdefault()

2. pop(key). del dict[key]. popitem(), clear()

3. dict[存在的key] = 新值, d1.update(d2) 把d2的k-v更新到d1中

4. get(key, 默认值), setdefault(), dict[key]

3. 字典的常用方法

1. keys() 返回所有字典的key的集合(高仿列表)

2. values() 返回所有的value的集合

3. items() 返回键值对. 元组

解构:

a, b = (1, 2)

4. 字典的嵌套

day01-05

一. python基础

1. Python是一门解释型. 弱类型语言

2. print("内容", "内容", end="\n") 打印语句

3. 变量: 程序运行过程中产生的中间值. 存储在内存中.供后面的程序调用

4. 变量的数据类型:

int, 整数

str, 字符串

bool, True,False

5. 命名规则:

1. 由数字,字母,下划线组成

2. 不能是纯数字或者数字开头

3. 不能是关键字

4. 不能太长

5. 要有意义

6. 不要用中文

7. 区分大小写

8. 推荐使用驼峰和下划线命名

6. input() 用户输入

7. if 判断

if 条件:

代码块

else:

代码块

if 条件:

代码块

elif 条件2:

代码块

..

else:

二. while循环

while 条件:

循环体

else:

代码块

流程:

判断条件是否为真. 如果真.执行循环体. 再次判断条件是否真. ....直到条件为假. 执行else. 退出循环

break 直接打断循环.

continue 停止当前本次循环. 继续执行下一次循环

格式化输出:

%s 字符串

%d 数字

运算符:

逻辑运算

1. and. 两端同时为真. 结果才是真.

2. or 或者. 两端有一个是真. 结果就是真

3. not 取反.

() => not => and => or

x or y

如果x非零, x, 否则 y

编码:

1. ASCII. 8bit, 1byte

2. GBK, 16bit, 2byte

3. unicode, 32bit,4byte

4. UTF-8, 英文:8bit, 1byte, 欧洲: 16bit, 2byte, 中文: 24bit, 3byte

3. 基本数据类型

1. int 数字. bit_length() 二进制长度

3. bool 空:False, 非空:True

2. str, 字符串不可变

索引切片: 由0开始

[起始位置: 结束位置: 步长]

操作:

1. upper() 变成大写

2. strip() 去掉空格(两端)

3. replace() 替换

4. split() 切割

5. startswith() 以xxx开头(判断)

6. find() 找xxx字符串在原字符串中出现的索引位置. 找不到返回-1

7. count() 数数

8. format() 格式化输出

9. len() 求长度

4. 列表:

由[]表示

有索引和切片

常用操作:

增加:append(), insert(), extend()

删除:pop() remove() del, clear()

修改:索引切片修改

查询:

for 变量 in 可迭代对象:

循环体

else:

操作:

sort(reverse=True) 排序

reverse() 翻转

len() 长度

count() 数数

元组:

tuple, 只读列表, 由()组成. 不可变的

索引和切片. for循环

解构, 解包

a, b = 1, 2

range(10) 0-9

range(5, 10) 5-9

range(5,10,3) 5,8

5. dict 字典

由{}表示. 存储key:value 键值对. 根据key来计算hash值.找到对应的内存地址.

key必须是可hash的. 不可变的. int, str, 元组, bool

操作:

增加: dict[key] = value

setdefault(key, value)

删除: pop(key), del , popitems(), clear()

修改: dict[key] = value

查询:dict[key], get(key, 默认值),

setdefault() 先执行新增那个流程. 然后.获取到key对应的值

常规操作:

keys() 获取所有的key.返回的像个列表

values() 获取所有value

items() 获取所有的key,value.装成元组. 返回列表[(key,value), (key,value)]

通过items()获取的是k,v

for k,v in dict.items():

直接循环遍历. 拿到的是key

for k in dict:

day06

今日主要内容

1. is 和 == 区别

id()函数

== 判断两边的值

is 判断内存地址

回顾编码:

1. ASCII: 英文, 特殊字符, 数字, 8bit, 1byte

2. GBK: 中文 16bit, 2byte. 兼容ASCII

3. unicode: 万国码, 32bit 4byte. 兼容ASCII

4. UTF-8: 长度可变的unicode. 英文:8bit, 欧洲:16bit, 中文:24bit 3byte

python2 只能用ASCII

python3 有unicode, 默认的编码就是unicode

内存里用的是unicode. 硬盘和网络传输用的是utf-8或者GBK

2. encode() 编码. 获取到的是编码之后的结果. bytes

3. decode() 解码. 把bytes编程我们熟悉的字符串

day07

今日主要内容

1. 补充基础数据类型的相关知识点

1. str. join() 把列表变成字符串

2. 列表不能再循环的时候删除. 因为索引会跟着改变

3. 字典也不能直接循环删除.

把要删除的内容记录在列表中. 循环列表. 删除原列表, 字典中的数据

4. fromkeys() 不会对原来的字典产生影响. 产生新字典(神坑, 考试)

5. set集合. 不重复, 无序.

6. 想转换成什么.就用什么括起来

7. 深浅拷贝

1. 直接赋值. 两个变量指向同一个对象.

2. 浅拷贝:只拷贝第一层内容. copy()

3. 深度拷贝: 对象中的所有内容都会被拷贝一份

import copy

copy.deepcopy()

day08

文件操作:

1. r

2. w

3. a

4. r+

读写模式.

需要移动光标进行反复读写

5. w+

6. a+

7. b bytes 读写操作的是字节. 用在非文本上

8. seek() 移动光标到xx位置

开头: seek(0), 末尾: seek(0,2)

9. 文件修改

创建新文件. 把修改后的内容写入新文件. 删除老文件. 重命名新文件

import os

os.remove("")删除文件

os.rename("源文件", "新文件名") 重命名文件

for line in f:

line 一行数据

with open("文件名") as f:

不需要关闭文件句柄

1. 文件操作

f = open(文件路径, mode="模式", encoding="编码格式")

mode: r, w, a, r+, w+, a+, rb, wb, ab, r+b, w+b, a+b

b: 输入输出的是字节. 处理非文本

光标:seek()移动光标

开头: seek(0)

结尾:seek(0,2)

truncate()截断

strip() 去掉空格. 还能去掉\n和\t

文件句柄可以进行迭代

for line in f:

循环体

day09

今日主要内容

函数:

函数:对功能的封装

语法:

def 函数名(形参):

函数体

函数名(实参)

函数名:命名规则和变量一样

函数的返回值:

return, 函数执行完毕. 不会执行后面逻辑

1. 如果函数中不写return返回None

2. 只写return 返回None

3. return 返回值. 返回一个值

4. return 值1, 值2,... 返回多个值. 调用方接收到的是元组

参数:

在函数执行的时候给函数传递的信息

1. 形参:

1. 位置参数.

2. 默认值参数. 当调用的时候不给传值使用默认值

3. 混合使用. 顺序: 1. 位置参数, 2, 默认值参数

2. 实参:

1.位置参数. 按照位置给形参赋值

2. 关键字参数. 按照名称给形参赋值

3. 混合参数. 先用位置参数, 再用关键字参数

day10

今日主要内容

1. 动态参数

位置参数的动态参数: *args

关键字参数的动态参数 : **kwargs

顺序:

位置,*args,默认值,**kwargs

在形参上*聚合, **聚合

在实参上*打散, **打散

2. 命名空间和作用域

命名空间:

1. 内置命名空间: python解释内部运行时的变量函数

2. 全局命名空间: 我们在py文件中直接声明出来的变量,函数

3. 局部命名空间: 在函数内部声明的变量和函数.

作用域:

1.全局作用域:内置+全局

2.局部作用域:局部

globals() 查看全局作用域中的名字

locals() 查看当前作用域中的名字

3. global和nonlocal

global: 把全局变量拿到局部来用.

nonlocal: 把离他最近的一层的变量拿过来.不会找全局

day12

三.今日主要内容

1, 函数名的应用,第一类对象

函数名可以像变量一样进行使用

1.赋值

2.作为list元素

3.作为参数

4.作为返回值

2, 闭包

内部函数访问外部函数的局部变量.

好处:

1.安全

2.常驻内存. 提高效率

3, 迭代器

可迭代对象(Iterable):内部包含__iter__().

迭代器(Iterator): 内部含有__iter__() __next__()

str, list, tuple, set, dict

f, range

迭代器的特点:

1.省内存

2.惰性机制

3.只能向前.

day13

今日主要内容

1. 生成器和生成器函数

生成器的本质就是迭代器

生成器的三种创建办法:

1.通过生成器函数

2.通过生成器表达式创建生成器

3.通过数据转换

生成器函数:

函数中包含了yield的就是生成器函数

注意:生成器函数被执行. 获取到的是生成器. 而不是函数的执行

生成器表达式:

(结果 for 变量 in 可迭代对象 if 筛选)

取值:

1. __next__()

2. send(值) 给上一个yield位置传一个值, 第一个和最后一个yield不用传值

3. 可以for循环

4. list(g)

2. 各种推倒式和生成器表达式

1. 列表推倒式 [结果 for 变量 in 可迭代对象 if 筛选]

2. 字典推倒式 {结果 for 变量 in 可迭代对象 if 筛选} 结果=>key:value

3. 集合推倒式 {结果 for 变量 in 可迭代对象 if 筛选} 结果=>key

day15

今日主要内容

1. lambda 匿名函数

语法:

lambda 参数:返回值

不能完成复杂的操作

2. sorted() 函数

排序.

1. 可迭代对象

2. key=函数. 排序规则

3. reverse. 是否倒序

3. filter() 函数

过滤

1. 函数, 返回True或False

2. 可迭代对象

4. map() 映射函数

1. 函数

2. 可迭代对象

5. 递归

自己调用自己.

def func():

func()

func()

难点:不好想.需要找规律. 不好读

6. 二分法

掐头结尾取中间. 不停的改变左和右. 间接改变中间. 查询效率非常高

类,具有相同属性和技能的一类事物

人类是一类,ryz是一个对象 实例对象

狗是一类,旺财是一个对象

python的基本内容_python基本知识相关推荐

  1. python基础主要内容_python基础知识

    输入输出 基本的输入和输出: 输入:input() 输出:print() 打印 username=input('Please input your name:') passwd=input('Plea ...

  2. python 读取邮件内容_python获取邮件内容(邮件内容为html)

    用python获取邮件内容比较简单,直接用现成的imap和pop3包即可,但是有时候邮件的内容不是plainText而是html甚至是一个url链接,原本的操作流程是点击url获取内容(比如csv等等 ...

  3. python读取文件特定内容_Python基础知识之文件的读取操作

    读取文件的操作步骤 有一道脑筋急转弯,问把大象装进冰箱的步骤,答案很简单,打开冰箱.把大象推进去.关闭冰箱.这就是一个处理问题的思路,我们对文件的操作和这个一样,第一步:打开文件:第二部:处理文件(读 ...

  4. python常用变量名_python基础知识整理

    Python Python开发 Python语言 python基础知识整理 序言:本文简单介绍python基础知识的一些重要知识点,用于总结复习,每个知识点的具体用法会在后面的博客中一一补充程序: 一 ...

  5. python中用str乘方_Python基础知识

    Python2与Python3的区别:  (这里只列举自己总结的几点) Python2: 源码不标准 混乱 重复代码过多 默认使用的编码方式是ASCII码 # 解决对应编码问题 在首行增加 #-*-e ...

  6. python查找文件内容_python实现搜索文本文件内容脚本

    本文介绍用python实现的搜索本地文本文件内容的小程序.从而学习Python I/O方面的知识.代码如下: import os #根据文件扩展名判断文件类型 def endWith(s,*endst ...

  7. python write函数换行_Python基础知识(三)

    本章小结 学习越往后越意识到总结的重要性 特别是语法基础,东西太多 不用是真的会直接忘掉 我在总结本文的时候就发现 我当时觉得学得很好很扎实 自信不会忘记的东西, 真的已经被我忘掉了 还不得不依靠百度 ...

  8. python清空列表内容_python 清空列表数据库

    Pyhton连接SQL Server数据库解决方案 为了提高工作效率及便利性,拟自主开发一款一键自动化运维小工具:其中主要一项功能用于与SQL Server数据库进行交互,程序可以根据数据库中数据情况 ...

  9. python修改文件内容_Python批量修改文本文件内容的方法详解

    这篇文章主要介绍了Python批量修改文本文件内容的方法的相关资料,需要的朋友可以参考下 Python批量替换文件内容,支持嵌套文件夹 import os path="./" fo ...

最新文章

  1. Java项目:在线宠物商店系统(java+SSM+mysql+maven+tomcat)
  2. 第2次作业+105032014158
  3. python paramiko模块中设置执行命令超时值
  4. IOS7最新的系统漏洞
  5. 8 种方案解决重复提交问题!你选择哪一种呀?
  6. Codeforces Round #229
  7. 实验5: IOS的升级与恢复
  8. WGCNA | weighted correlation network analysis
  9. 在脚本中, 使用sqlite3检查android程序生成的数据库是否OK
  10. reduceByKey与GroupByKey,为什么尽量少用GroupByKey
  11. pytorch--- .zero_grad()
  12. 用maven骨架新建项目以及解决速度慢的问题
  13. 最简单的C语言无限弹窗
  14. 矿大开学计算机考试,矿大计算机基础考试题库.pdf
  15. JavaScript如何计算两个日期之间的时间差?
  16. 团队和过程:提升移动应用体验的根本
  17. VR全景图在家装行业的应用及发展
  18. windows远程连接mac
  19. 基于51单片机的智能门禁控制系统
  20. KDD 2021 | 推荐系统论文集锦[持续更新]

热门文章

  1. D. Ceil Divisions(思维+根号构造)
  2. voliate解决重排序
  3. 为什么不用mysql版本号加锁_面试必问的Mysql事务和锁,你真的了解吗?
  4. 什么是幽灵空白节点?
  5. 关于智能产品设计的建议
  6. 数字式万用表的使用说明
  7. 见证中国云势力崛起,博睿数据实力入围2021~2022 Cloud 100 榜单
  8. Simotion应用与组网之十七 状态字
  9. http的部分知识点
  10. 图谱实战 | 知识图谱在美团搜索酒旅场景认知中的应用