初学Python,值得记下的笔记写代码的感觉 Node.js:回调套娃 Python:严格的楼梯型缩进 当年认为Pyth
写代码的感觉
Node.js:回调套娃 Python:严格的楼梯型缩进 当年认为Python强制缩进,现在体会了“人生苦短,我用Python”的简短。
编程环境
别看网上那些配置七七八八环境变量的教程了!!!
最新VSCode+官方最新的Python即可。都2024了,大多数编程语言win环境下载安装包应该是自动配置环境变量的!!!
配置环境变量,就是让在电脑的任何一个角落都可以调用python.exe这种编译器。
python命令(简写py)
文件名即可运行,为了更短简写如下:
安装模块使用pip3
pip3
是 Python 3 的包管理工具,用于安装、升级、卸载 Python 软件包。安装模块:
pip3 install 模块名
pip3 insatll jupyter notebook #安装web应用型Python分段代码运行
pip3 install matplotlib #安装Python绘图库
pip3 install pandas #数据分析处理读取EXCEL
命令行启动 jupyter notebook
Jupyter Notebook 是一个非常灵活和强大的工具,它主要用于交互式计算、数据探索、可视化和报告编写。Jupyter Notebook 的核心价值在于它提供了一个易于使用的界面,使得数据科学家、研究人员和工程师能够在一个文档中整合代码、文本、数学公式、图表和其他媒体元素。
注意jupyter notebook默认的文件格式是 .ipynb
Day-1 通过键盘计算计偶数
通过键盘输入一个数,若该数字位各个位上的数字和为奇数,则将该数各位数倒序打印(如 122(各个位上的数字之和为1+2+2=5)。打印 221),若该数字各个位数之和为偶数,则直接打印该数字
list = []
sum = 0
num = input("请输入一个数字:")
for n in num:
list.insert(0,str(n))
sum += int(n)
if(sum % 2 == 0):
print("".join(list))
else:
print(num)
Day-2 学习numpy数据处理
2、使用numpy完成以下操作: 1)创建一个包含1到10的整数的一维NumPy数组。 2)计算这个数组中所有元素的和。 3)找出并返回这个数组中大于5的元素。 4)创建一个新数组,其中包含原数组中每个元素减去5的结果。
NumPy
是 Python 中一个非常重要的库,它主要用于科学计算,特别是处理大型多维数组和矩阵。我的理解是对纯数组类数据进行处理。
import numpy as np
arr = np.arange(1, 11)
sum = np.sum(arr)
arr5 = arr[arr > 5]
new_arr = arr - 5
print("1数组:", arr)
print("2所有元素的和:", sum)
print("3找出并返回这个数组中大于5的元素:", arr5)
print("4原数组中每个元素减去5", new_arr)
Day-3 学习CSV文件和制图
1、假设你有一个关于学生成绩的数据集student_score.csv,其中包含学生的学号(StudentID)、姓名(Name)、数学分数(MathScore)和英语分数(EnglishScore)。你需要完成以下任务: student_score.csv内容如下:
注意CSV文件处理。 如果数据来源于 Word注意复制会多空格 推荐: .txt 推荐→ .csv .xlsx→.csv 会出现乱码错误
![]()
1)加载数据:首先,你需要从CSV文件中加载数据。假设CSV文件名为student_score.csv,并且列名已经正确设置。 2)数据探索:查看数据的前几行,以了解数据的结构和内容。 3)数据清洗: 数学成绩为空的,使用数学成绩平均分填充 英语成绩为空的,使用英语成绩的中位数来填充 4)排序数据: 根据总成绩从高到低对学生进行排序。 5)展示数据: 在一张图上使用matplotlib画出学生数学和英语成绩(填充之后)的趋势折线图。其中学生姓名为x轴,分数为y轴,数学成绩和英语成绩在同一张图上显示。
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
数据 = pd.read_csv('学生成绩.csv')
print(数据.head(6))
# 数据处理 其他4个人的平均分
math_avg = 数据['MathScore'].mean()
eng = 数据['EnglishScore'].median()
print('平均数学成绩:', math_avg)
print('英语成绩:', eng)
数据.fillna({"MathScore":math_avg}, inplace=True)
数据.fillna({"EnglishScore":eng}, inplace=True)
数据['TotalScore'] = 数据['MathScore'] + 数据['EnglishScore']
# 根据总成绩从高到低对学生进行排序
d = 数据.sort_values(by='TotalScore', ascending=False)
print(d)
plt.rcParams['font.sans-serif']=['SimHei'] ##设置字体为 黑体
plt.rcParams['axes.unicode_minus']=False ##显示符号
# 绘制折线图
plt.figure(figsize=(10, 6))
plt.plot(d['Name'], d['MathScore'], marker='o', label='数学得分')
plt.plot(d['Name'], d['EnglishScore'], marker='s', label='英语得分')
plt.title('学生数学和英语折线图')
plt.xlabel('学生姓名')
plt.ylabel('得分')
plt.xticks(rotation=45) #设置 x 轴上的刻度标签旋转 45 度
plt.legend() # 显示图例
plt.tight_layout() # 自动调整子图参数,使之填充整个图像区域
plt.show()
总结
Python对于数据处理还是比较爽的,写的代码更加简洁。用缩进代替代码包含结构! 我称之为台阶行Python!
转载自:https://juejin.cn/post/7398342795437015094