适用于对快速学习python基础语法和使用和总结有需求的小伙伴哦

欢迎来到
魔术之家!!

Python轻松上手

    • 编写第一个python.py
    • 固定数据介绍.py
    • 列表的性质以及增删改查.py
    • 小小的任务:求sinx曲线图形面积.py
    • 常用操作符.py
    • 条件判断语句.py
    • 字符串索引&切片&增删改查
    • 对文件处理操作
    • 统计小说的单词词频
    • 用户函数自定义
    • python方法与函数对比
    • 面对对象实例
    • python模块

肝了2天 将python基础知识配合代码注释讲解 短期快速上手来啦! 文本资源目录如下:

适用于对快速学习python基础语法和使用和总结有需求的小伙伴哦_第1张图片

编写第一个python.py

# python中变量不需要声明 但必须赋值 赋值后才能创建 

print( 'hello world') # hello world yyds


机器学习 = ['决策树', "神经网络", '点乘向量积']  # 因为python使用 utf-8编码所以可以用中文
for i in 机器学习:
    print(i)

固定数据介绍.py

# 如何用python中的数据结构/数据表示和存放数据
# 标准数据类型 = 【

# ”Number(数字):[’int.float,bool,complex(复数)'],
# “String(字符串)”,
# “list(列表)”,
# “Dictionary:字典”,
# “Set:(集合)”,
# “Tuple:(元组)"

# 】

import math

a = -3.5
b = abs(a)  # absolute value
print(b)

c = math.sin(b)
print(c)


列表的性质以及增删改查.py

# 列表(List)
all_in_list = [
    1,
    'love',
    True,
    [1, 2, 3]
]

# 列表每个元素都是可变的,
# 列表中每个元素都是有序的,
# 列表可以容纳Python所有对象

print(all_in_list)

index = all_in_list[1]
index = all_in_list[-3]

index = all_in_list[0:2]  # 列表的切片,顾头不顾尾,只有1到2,不包括2,
print(index)

# 列表的增删改查

all_in_list.append("hello world")  # 附加最后一个元素
all_in_list.insert(0, "pre_hello")  # 插入元素
print(all_in_list)

all_in_list.remove("hello world")  # 删除指定元素
print(all_in_list)

del all_in_list[:2]  # 删除元素
print(all_in_list)

all_in_list[0] = 100
print(all_in_list)



#for循环  #效率底 所以使用列表推导式
x = []
for i in range(10):
    x.append(i)
#print(x)

#列表推导式
x = [i for i in range(3,10)]
y = [i**2 for i in range(3,10)]
z = [i**2 for i in range(3,10) if i%2==0]  #输出偶数项
print(x)
print(y)

小小的任务:求sinx曲线图形面积.py

import math

n = 10
x = []
y = []

width = 2 * math.pi / n

# 方法一:for循环建立核心数据结构
for i in range(n):
    x.append(i * width)
    y.append(abs(math.sin(x[i])))  # 绝对值
sums = sum(y) * width  # 求和函数


# 列表推导式建立核心数据结构(尽量不用for循环,时间复杂度高)
x = [i * width for i in range(n)]
y = [abs(math.sin(i * width)) for i in range(n)]
z = [abs(math.sin(i * width)) * width for i in range(n)]
sums = sum(z)

print(x)
print(y)
print(sums)

常用操作符.py

# python 操作符 大多与C语言类似
# 赋值 关系 运算 逻辑 等 (也是返回一个值)

# 逻辑

res = 1 < 2 < 3  # 不同时可以连续比较 猜测其在对 < > 进行重载 没有参数返回Boll型数据,又参数返回类继续比较
res = 'M' in 'Magic'  # 判断是否在里面
print(res)


条件判断语句.py

# 只有 if  elif  else while 没有switch了

# 条件判定语句 if 后面语句可以不用加()
if 1 < 2:
    print('hello')

if 1 < 0:
    print('hello')
else:
    print("world")

if 1 < 0:
    print('hello')
elif 1 < -1:
    print("world")
else:
    print("!")

# 冒泡排序法

x = [1, 2, 3, 4, 123, 1, 64, 1, -2]
n = len(x)
for i in range(n):  # 循环次数更多,时间复杂度更高
    for j in range(i):  # 保证在循环中x[i]值最大,前面小于的不管他,一旦有一个x[j]>x[i] j+1后面也全大于 x[j] 和x[i]一直调换
        if x[j] > x[i]:  # 调换方法!!!
            x[i], x[j] = x[j], x[i]

print(n)
print(x)

字符串索引&切片&增删改查

# 字符串
# 任何在这双引号的文字
# 单引号其实和双引号完全一样,但在开发时建议引入用单引号,
# '''三个引号被用于长段文字或说明,只要引号不结束,你就可以任意换行'''
# 字符串为不可变数据类型


string = "字符串"

string = '''hello

嘿嘿

world'''

string = 'my ,name'

print(string)

# 字符串基本用法,
# 拼接 char1 + char2 + char3,
# 重复 'word'*3,
# 转换 int(string),
# 切片与索引:
# str[-3],
# str[1:4],
# str[3:]

res = string[1]  # 字符串索引
res = string[1:4]  # 字符串索引

res = string * 3

res = string + ' is '

# 字符串自身属性

# 分割
res = string.split(sep=',')
# 默认按照空格切割开,可以设置separate设置隔开符
# 返回值是一个列表,

#注意!!!!:string是不可变的数据类型,不能对其数据进行改动, 除非对名字重新赋值
print(1,string)
string[1] = 'y' #报错!!

#小写变大写
res = string.upper()

print(res)

字典的创建 索引&增删改查

# 字典 大括号 ,列表 中括号

dictionary = {
    'BIDU': 'baidu',
    'SINA': 'sina',
    'YOKU': 'youku',
}

# 键 - 值 成对出现;
# 键不能重复,
# 键不可更改,值可修改!!!!! 字符串也是 列表则可以
# 键来索引值

dic = {'h': 'hello', 0.5: [0.3, 0.5], 'w': 'world'}
# dic = {'h': 'hello', 0.5: [0.3, 0.5], 'w': 'world',[2]:2}
# 不能以列表为键!!前提是因为键是不可以变得,而序列是可以变的

print(dic)

demo = dic['h']
demo = dic[0.5]  # 字典中的元素无先后顺序,只能用键来索引
print(demo)

# 字典的增删改查

# 修改

dic['h'] = 'hi'

# 增加

# 单个
dic['new'] = 'new dic'  # 如果没有该键,会在字典末尾生成新的键值对

# 多个
dic.update({1: 2, 3: 4})

# 删除
# del dic #直接整个删掉
del dic['h']

# 字典推导式

d = {i: i ** 2 for i in range(10)}
d = {i: i ** 2 for i in range(10) if i % 2 == 0}

print(dic)
print(d)

对文件处理操作

# 文件操作

# 只读
f = open('beauty_live.text', 'r')

# 读取文件操作

txt = f.read()
txt = f.read(100) #设置读取字符的个数
# 因为是对文件以读的方式打开,
# 所以在读取文件指针后,
# 指向文件的指针指向文件尾,就无法再继续读取,需要将指针seek变为0

f.seek(0)

# 只读行(返回值是一个列表)
txt1 = f.readlines()

# txt1 = f.readline() #只读一行

f.close()
# print(txt1)

print(txt)

统计小说的单词词频

# 统计小说的单词频次
import re

# 查看当前路径
import os

path = os.getcwd()  # current word directory 当前目录
print(path)

f = open('beauty_live.text', 'r')  # 引入当前工程路径 , 如果移动了 需要绝对路径
txt = f.read()  # 读取进来的数据类型是字符串
f.close()

txt = txt.lower()

# 去除小数点等符号  用‘’替代 就是空
re.sub('[,.?!"\'-]', '', txt)

# 由于使用分割后返回值是一个列表 无法使用re.sub 所以先处理在分割
txt = txt.split()

# 统计频次
word = {}
for i in txt:
    if i not in word:
        word[i] = 1
    else:
        word[i] += 1

# 对次数排序
sor = sorted(word.items(), key=lambda x: x[1], reverse=True)
print(txt)
print(word)
print(sor)

用户函数自定义

# 函数自定义

# 简单用lamdba
y = lambda x: x ** 2
y1 = lambda x: x[1]


# 复杂用def

def Sum(x=1, y=2):  # 设置默认值同于c++,前面设置了后面必须避免歧义,可以只设置后面
    return x + y


res = Sum()
demo = y(3)
demo = y1(['hello', 'world'])

print(res)
print(demo)

#求给定序列 偶数个数
def su(x):
    z = 0
    for i in x:
        if i%2==0:
            z +=1
    return z

print(su([1,2,34,5,6,2,4,]))

python方法与函数对比

# 面对对象编程

list = [2.4, 'hello', 'world']
list.append('hehe')

print(list)

string = 'myapp'

string.append('hi')  # 对字符串对象而言 没有append方法 ,注意不是函数
list.split()  # 同样不可以对列表对象 使用split方法 方法与对象挂钩

print(string)

面对对象实例

# 创建自己的类

class human:  # 方法是定义在类内的函数
    def __init__(self, ag=None, se=None):
        self.age = ag  # 类的属性
        self.sex = se
    
    def square(self, x):  # 方法
        return x ** 2


zhangfei = human(ag=28, se='M')  # 类的实例化

demo = zhangfei.square(3)
demo = zhangfei.age

print(demo)

python模块

# 模块是一个包含了所有你定义的函数的变量的文件,其后缀名为.py其实就是一个脚本文件

import math  # 引入模块
import def_math
from def_math import Sum

res = math.sin(1)  # 用模块调用
res = math.pi

from math import sin, pi  # 从模块引入变量和函数 直接使用 面对多次使用的情况下,建议用此方法 !

# 导入模块全部变量和函数
from def_math import *  # 不建议这样做 把全部引入 没有库名称区别 与其他库的函数名歧义

res = sin(2)  # 在模块引入直接使用
res = 2 * pi

res = def_math.Sum(1, 3)
res = Sum(1, 3)

print(res)

模块def_math.py

def Sum(x, y):
    return x + y

整套资源下载:
传送门在这!!

你可能感兴趣的:(Python学习笔记,python)