python 学习笔记——基本知识点总结

目录

1.开发环境

1.1 计算机组成

1.2 python

1.2.1 python下载

1.2.2 解释器

1.2.3 集成开发环境pycharm

1.2.4 基础语法

1.注释: 

2.变量:

2.1 标识:

2.2 变量说明:

2.3 格式化转换

  2.4 转义字符:

2.5 内置函数

2.6 运算符

3.if语句

4.while循环

5.for循环

6.字符串

6.1 切片

6.2 常用操作方法

 7.列表与元组

7.1 列表

7.1.1 切片

7.1.2 函数

7.3 in 使用

7.4 del 使用

7.2 元组

8.字典和集合

 8.1 字典

8.1.1 概念

8.1.2 常见操作

1.增、改、删、查

2.遍历

8.2. 集合

8.1.2 概念

8.1.3 常见操作

1. 增、删、查

9.运算符(容器)

10.函数

1.函数

2.lambda函数

3.内置函数

11.文件操作


1.开发环境

1.1 计算机组成

1.2 python

1.2.1 python下载

1.官网下载

官网:Welcome to Python.org

1.2.2 解释器

1.解释器的作用:运行文件

2. 种类:

        1.   CPython,   C语音开发的解释器 [官方]

        2.   JPython,是运行在Java平台上的Python解释器

        3.   IPython,   基于CPython之上的一个交互式解释器

        4.   PyPy,  是另一个Python解释器

        5.   IronPython,  是运行在微软.Net平台上的Python解释器

        来源:常用的五种Python解释器-CSDN博客

3. 下载地址:Welcome to Python.org

1.2.3 集成开发环境pycharm

官网:PyCharm: the Python IDE for data science and web development (jetbrains.com)

1. 作用:智能提示、语法高亮、代码跳转、调试代码、解释器、第三方库

详细:pycharm 常用功能总结_pycharmflask app.py中各函数的功能-CSDN博客

2.介绍与安装:Pycharm介绍与安装-CSDN博客

3.界面介绍:PyCharm 界面介绍_pycharm界面-CSDN博客

1.2.4 基础语法

1.注释: 

解释器不执行注释的文本

# print("hello world!")      -> 单行注释 (Ctrl+/)
"""
print("hello world!")
print("hello world!")
print("hello world!")        -> 多行注释
"""
2.变量:
2.1 标识:
True   Flase   None
if     elif    else    assert
while  for     in
def    from    import  class  
with   open    as
return yield   pass    break  raise  continue
lambda def     del   
global nonlocal
try    except  finally
and    or      not
help   type    
range  enumerate      

assert:python中assert函数的定义及用法_python中assert的用法-CSDN博客

yield:python中yield的用法详解——最简单,最清晰的解释_yield python-CSDN博客

raisePython raise用法(超级详细,看了无师自通)-CSDN博客

 del:python中的del用法_pythondel-CSDN博客

gobalnonlocal:Python中关键字global与nonlocal的区别_python中global和nonlocal区别-CSDN博客

finally:python中的finally用法_python finally用法-CSDN博客

enumerate:

python enumerate()函数 用法_enumerate(x):-CSDN博客

2.2 变量说明:

        2.2.1 数据类型:

                数值:int (整数型)、float(小数型)

                布尔:True  Flase

                字符串:str

                空值:None

                list(列表)、tuple(元组)、set(集合)、dict(字典)

2.3 格式化转换
格式符号转换
%s字符串
%d有符号的十进制整数
%f浮点数
%c字符
%u无符号的十进制整数
%o八进制整数
%x或%ox十六进制整数
%X或%OX十六进制整数
%e或%E科学计数法
%g%f和%e的简写
......

示例:

print("%d,%s,鲤鱼利于鲤鱼"%(111, "鱼鱼鱼"))

运行结果:
111,鱼鱼鱼,鲤鱼利于鲤鱼
  2.4 转义字符:

\n :换行

\r :回车

运行代码示例:

\t :制表符 ,相当于一个tab键

2.5 内置函数
函数说明
input()输入
print()输出
int()转换成整数
str()转换成字符串
float()转换成小数
tuple()转换成元组
list()转换成列表
set()转换成集合
dict()转换成字典
repx()转换成表达式字符串
complex(real,[,imag])创建复数,real实部,imag虚部
eval(str)计算在字符串中有效的表达式,返回一对象
chr()将整数转换成Unicode字符
ord()将字符转换成ASCII整数值
hex()整数转换十六进制字符串
......
2.6 运算符

1.分类:

分类说明
算数运算符+ - * / // ** % ()
赋值运算符=
复合赋值运算符+= -= *= /= 等
比较运算符

< > >= <= == !=

逻辑运算符and or not

                        详细:Python的运算符_python中的运算符-CSDN博客

运算符优先级(从大到小):

        1.算数运算符:()高于 ** 高于* / // % 高于 + -

        2.赋值运算符:=

        3.复合赋值运算符:运算符右侧运算   高于 复合运算

        4. 比较运算:左至右

                详细:Python运算符优先级-CSDN博客

3.if语句

语法:if...elif...else

三元运算符:a if a >b else b

示例:

a = 1
if a:
    print("第一个")
elif (-3 < a < 2) or (10 <= a < 20):          
    print("中间")                            
else:                                         
    print("第三个")


#三元运算符  推导式
b = a if a > 0 else 0
print(b)

#运算结果:
第一个
1
4.while循环

语法:while 或 while...else

a = 1
while (a <5):
    a+=1
    print(a,end="")
print("\n结束")

a = 1
while (a <5):
    a+=1
    print(a,end="")
else:
    print("else")
print("\n结束")

#运算结果
2345
结束
2345else

结束

扩展:

i = 0
a = []
b= []
while True:
    i+=1
    if 10 <= i < 15:
        continue
        a.append(i)
    if 15 <= i < 20:
        pass
        b.append(i)
    if 95 < i:
        break
else:
    print("else1")
print("else2")
print("a:",a)
print("b:",b)

#运行结果
else2
a: []
b: [15, 16, 17, 18, 19]
5.for循环

语法:for...in或 for... in...else

for i in range(5):
    if i == 1:
        continue
    print(i,end="")
print("结束")

for i in range(5):
    if i == 1:
        continue
    print(i,end="")
else:
    print("else1")
print("结束")

#推导式
b = {i:i**2 for i in range(5)}
a = [ [0 for j in range(10)] for i in range(10)]
print(b,"\n")
print(str(a).replace("], ", "],\n"))


#运行结果
0234结束
0234else1
结束
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16}

[[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
6.字符串

语法:# 注释  或  """ 注释"""

6.1 切片
a = "12345678910111213"
b = a[0:3]
print("b:",b)

c = a[0:10:2]
print("c:",c)

d = a[-9:-1:2]
print("d:",d)

e = a[10:1:-1]
print("e:",e)

#运行结果
b: 123
c: 13579
d: 9012
e: 019876543
6.2 常用操作方法
函数说明
find(self,x,_start,_end)查找返下标,否则返-1
index(self,x,_start,_end)查找返下标,否则报错
rfind()同find(),但查找方向为右往左
rindex()同index(),但查找方向为右往左
count(self,x,_start,_end)返回子串x在字符串出现的次数
replace(self,_old,_new,_count)替换
capitalize(self)第一个字符转换成大写
title(self)每个单词首字母转换成大写
lower(self)大写转小写
upper(self)小写转大写
lstrip(self,_chars)删除左侧空白字符
rstrip(self,_chars)删除右侧空白字符
strip(self,_chars)删除两侧空白字符
ljust(self,_width,_fillchar)返回左对齐,长度_width右填充_fillchar的新字符串
rjust()同ljust(),但右对齐
center(self,_width,_fillchar)返回居中对齐,长度_width左右填充_fillchar的新字符串
startswith(self,x,_start,_end)检查是否以子串x开头,是返回True,否则返回False
endswith()同startswith(),但检查结尾
isalpha(self)如果有字符且都是字母则True,否则False
isdigit(self)如果只包含数字则True,否则Flase
isalnum(self)如果有字符且都是字母数字则True,否则Flase
isspace(self)如果只有空格则True,否则Flase
......
 7.列表与元组
7.1 列表
7.1.1 切片
a = [1,2,3,4,5,6,7,8,9,10,11,12,13]
b = a[0:3]
print("b:",b)

c = a[0:10:2]
print("c:",c)

d = a[-9:-1:2]
print("d:",d)

e = a[10:1:-1]
print("e:",e)

#运行结果
b: [1, 2, 3]
c: [1, 3, 5, 7, 9]
d: [5, 7, 9, 11]
e: [11, 10, 9, 8, 7, 6, 5, 4, 3]
7.1.2 函数
函数说明
index(self,x,_start,_end)返回指定数据x所在的第一个下标
count(self,x)返回指定数据x出现的次数
len(self)返回指定数据的列表个数
append(self,x)列表追加新元素x,可以是列表或集合
extend(self,x)接受列表x作为参数,该列表中每个元素添加进原有的列表中
insert(self,_index,x)指定下标_index位置新增数据x,该下标及下标后数据往后移动
pop(self,_index)删除指定下标_index数据,并返回该数据
remove(self,x)移除第一个匹配的数据x
clear(self)清空列表
reverse(self)自带内置方法,数据反转
reversed(self)自带的类方法,对序列值的反向迭代器 返回反向迭代器
sort(self,key,reverse)排序,reverse默认升序(false),key为函数
copy(self)复制数据,浅拷贝,深拷贝用(copy.deepcopy())
......

                append与extend函数:python list中append()与extend()用法-CSDN博客

7.3 in 使用

in: 判断是否存在,返回布尔值

语法:in 或 not in

a = [1,2,3,"hello","h"]
if "he" in a:
    is_a1 = True
else:
    is_a1 = False

if "1" not in a:
    is_a2 = True
else:
    is_a2 = False

if "h" in a:
    is_a3 = True
else:
    is_a3 = False

print("a1:",is_a1)
print("a2:",is_a2)
print("a3:",is_a3)

#运行结果
a1: False
a2: True
a3: True
7.4 del 使用

链接:python中del函数的用法总结_python del-CSDN博客

7.4.1 用法:

使用del 语句,删除到变量到对象的引用和变量名称本身

del语句作用在变量上,而不是作用在数据对象上

7.4.2 语法:del 目标

a = [1,2,3,4]
b = a
del a
print("b:",b)

a = [1,2,3,4]
del a[1:3]
print("a:",a)

#运行结果
b: [1, 2, 3, 4]
a: [1, 4]
7.2 元组

元组用法:python:元组【全用法】_python元组-CSDN博客

扩展: 

a = (10,)
if a == 10:
    print("a")
print("a:",a,type(a))

b = (10)
if b == 10:
    print("b")
print("b:",b,type(b))

a = (1,2,3,4)
c = a[1:3]
print("c:",c)

print("查找:",a.index(1))

a = (1,2,3,[1,2,3],5)
a[3][1] = "self"
print(a)
try:
    a[1] = "he"
except:
    print("报错!不能修改")

#运行结果
a: (10,) <class 'tuple'>
b
b: 10 <class 'int'>
c: (2, 3)
查找: 0
(1, 2, 3, [1, 'self', 3], 5)
报错!不能修改

8.字典和集合

 8.1 字典
8.1.1 概念

字典里的数据是以键值对的形式存在,字典内没有顺序,即不支持下标,查找方法即按照对应键查找即可

8.1.2 常见操作
1.增、改、删、查
a = {"a":1,"b":2}

#增
a["c"] = 3
print("增:",a)

#改
a["a"] = 2
print("改:",a)

#删
del a["c"]
#clear()也可以
print("删:",a)

#查
a1 = a["a"]
a2 = a.get("a")
print("a1:",a1)
print("a2:",a2)

#运行结果
增: {'a': 1, 'b': 2, 'c': 3}
改: {'a': 2, 'b': 2, 'c': 3}
删: {'a': 2, 'b': 2}
a1: 2
a2: 2
2.遍历
dict1 = {"name":"zhangshan","age":None,"gender":1}
for vle in dict1.values():
    print("vle:",vle)

print()
for key1 in dict1.keys():
    print("key1:",key1)

print()
for item1 in dict1.items():
    print("item1:",item1)

#运行结果
vle: zhangshan
vle: None
vle: 1

key1: name
key1: age
key1: gender

item1: ('name', 'zhangshan')
item1: ('age', None)
item1: ('gender', 1)
8.2. 集合
8.1.2 概念

 集合(set):存储元素不重复、无序数据类型,只支持成员操作赋、for循环迭代、枚举。

8.1.3 常见操作
1. 增、删、查
a = {}
b = set([1,2,3,4,5,1,1,1])
print("a:",a)
print("b:",b)
print()

#增
try:
    a.add(1)
    print("add1:", a)
except:
    print("a.add报错,‘ dict’对象没有属性‘ add’")
b.add(1)
print("add2:",b)

b.update([6,2])  #追加序列
print("update:",b)

#删
b.remove(1)          #删除集合中指定数据,不存在会报错
print("remove:",b)
b.discard(1)         #删除集合中指定数据,不存在不会报错
print("discard:",b)
b.pop()              #随机删除集合中的一个数据,并返回数据
print("pop:",b)

#运行结果
a: {}
b: {1, 2, 3, 4, 5}

a.add报错,‘ dict’对象没有属性‘ add’
add2: {1, 2, 3, 4, 5}
update: {1, 2, 3, 4, 5, 6}
remove: {2, 3, 4, 5, 6}
discard: {2, 3, 4, 5, 6}
pop: {3, 4, 5, 6}
#查
a = {1,2,3,4,5}
print(1 in a)
print(6 not in a)


#运行结果
True
True

9.运算符(容器)

运算符支持的容器类型
+字符串、列表、元组
*字符串、列表、元组
in字符串、列表、元组、字典
not in字符串、列表、元组、字典
a = "1234"
b = "2222"

c = a+b
d = a*2
e = a in b

print("c:",c)
print("d:",d)
print("e:",e)

#运行结果
c: 12342222
d: 12341234
e: False

10.函数

1.函数

函数基础:python函数基础_python怎么算总分-CSDN博客

语法:def 函数名(参数): ...内容...

def abc(a,b):
    return 1+1+a+b

def running(a,b=1):
    """
    函数说明文档
    :param a:
    :param b:
    :return:
    """
    c = 2      #局部变量
    __d = 3    #私有变量
    while True:
        if a == 1:
            a += 1
            continue
        elif c-__d == -b:
            c = abc(c,1)
            yield 1

        elif c -a == 3:
            return 3
        else:
            running(a,__d)

if __name__ == '__main__':
    n = 1                   #全局变量
    aaa = running(n,1)
    print(next(aaa))
    try:
        print(next(aaa))
    except:
        print("没有值")

#运行结果
1
没有值

函数提高:Python中的函数(二)--提高篇_编写无参函数f1(),要求嵌套无参函数f2(),分别实现输出打印字符串"我是中国人!"和-CSDN博客

2.lambda函数

语法:lambda  参数列表 :表达式

a = 1
aa = lambda a:1+a
print(aa(a))

#运行结果
2
3.内置函数
print(abs(-1))   #绝对值
print(round(1.3),round(1.9))  #四舍五入
"""
map(func,lst),将lst中每个元素传入func函数中组成新的列表
"""
def func(a):
    return a*2
print(map(func,[1,2,3,4])
"""
reduce(func,lst),其中func必须有两个参数。每次func计算的结果继续和序列的下一个元素做累积计算
"""
import functools
def func(a,b):
    return a+b
print(functools.reduce(func,[1,2,3,4,5]))          
"""
filter(func,lst)用于过滤序列,func函数用于判断,返回一个对象
"""
def func(n):
    return n % 2 == 1:
print(list(filter(func,[1,2,3,4,5,6])))

def def1(a,b,f):
    return f(a) + f(b)

a = def1(-1,-1,abs)
print(a)

#运行结果
1
1 2
[2,4,6,8,10]
15
[1, 3, 5]
2

11.文件操作

 文件操作:python 文件操作,最全的一个(转)_python文件操作-CSDN博客

语法:   

打开文件:  open() 或者with open() as f

模式:

模式描述
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb+以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+    以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

                        详细:Python文件操作详解_python 文件操作-CSDN博客

 函数:

 f.read(size):读取文件,size表示读取的数量
 f.readline():读取文件的一行,当使用for循环时,会自动调用本函数
 f.readlines():以列表的形式读取文件,一行为一个元素

f.write(): 文件写入

f.seek(_offset,_whence):  用来移动文件指针,参数:偏移量,起始位置(0:开头,1:当前,2:结尾)

os.listdir() 获取当前目录列表

os.getcwd() 获取当前目录

os.rename() 重命名

f.close() 关闭文件

  • 21
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值