python基础语法

本文详细介绍了Python编程的基础知识,包括程序设计流程、命名规则、数据类型如整数、浮点数和列表,以及元组、集合和字典等数据结构。还讲解了条件判断、函数定义、第三方模块如Pandas和NumPy的使用。通过实例展示了文件操作、错误处理和数据可视化,包括Matplotlib模块的2D和3D绘图。最后涉及了文件处理,如读写操作和文件重命名。
摘要由CSDN通过智能技术生成

设计程序

  • 需求分析
  • 程序设计
  • 代码编写
  • 测试与调试
  • 实施与开发
  • 维护优化

实例1(猜数字)

X=100
y=int(input("请输入数字:"))
if x==y:
     print('猜对了!')
elif y<x:
    print('太小了!')
else:
    print('太大了!')
     

命名法则

  • 避开Python自身关键词:‘False’,‘None’,‘True’,‘and’,‘as’,‘assert’,‘break’,‘class’,‘continue’,‘def’,‘del’,‘elif’,‘slse’,‘etc.’
  • 下划线命名法:lower_to_upper
  • 驼峰命名:mypython

行与缩进

  • Python最具特色的就是使用缩进代表代码块Block
  • 缩进就是空格,每个代码块的缩进空格数必须相同,否则代码会报错

实例2

a=10
b=20
if a<b:
    print(a)

数字

Python中数字分为:

  • 整数 : int
  • 浮点数 : float
  • 复数 : complex

列表

  • 一种有限的有序值得集合,用方括号【】表示
  • 列表中的元素可以使相同类型,也可以是不同类型的数据
  • 括号里的每个元素都被分配一个索引值,使用该值可以准确查找到列表中的元素,索引值从0开始
  • 删除列表中的值用del(),添加列表中的值使用append()

元组

  • 特殊形式的列表,用圆括号()表示
  • 元组中的数据是不可修改的
  • 不同的元组可以进行拼接,但是不允许删除增加元组内的元素

集合

  • 一个无序的不重复元素序列 ,用花括号{}来表示
  • 添加元素 :add()
  • 去除元素 :remove()
  • 计算元素个数 :len()
  • 判断元素是否在集合中 :x in s

实例3

y = {1, 3, 4, 5, 'python'}
if 'python' in y:
       print('good')

字典

  • 字典是一个无序,可变和有索引的集合,用花括号{}编写
  • 一个键key和一个值value共同构成了一个字典中的一个元素
  • 键是唯一且不可变得
  • 访问字典元素
  • 修改字典元素
  • 删除字典元素

实例4

m = {'英语': 100, '数学': 150, '专业': 150}print(m['英语'])
print(m['英语'])

布尔值

  • 布尔值是Python中一种特殊的逻辑数据类型
  • True和False
  • 常在逻辑运算,循环语句,条件盘肚腩语句使用

函数

常用函数

  • print()
  • type()
  • float( int x ) 将整形x转化为浮点形

构建与调用

自定义函数步骤

  • 函数代码块以def开头,后接函数标识符名称和圆括号()。圆括号后接冒号,然后下一行缩进开始写函数主题。
  • 任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
  • 函数运行结束后考虑是否需要返回至爱。renturn[表达式]结束函数,选择性地返回一个值给调用方,不带表达式的return相当于返回None。
实例5
def max1(a, b):   
if a > b:        
     return a    
else:       
     return b
c = max1(10, 20)
print(c)

第三方模块

Pandas模块

  • Pandas模块用于数据导入及数据处理
  • Pandas模块可以用于文件处理
  • Pandas模块可以对数据进行结构化处理
  • pandas.Series()可以将列表转化为数组
实例6
import pandas as pd
arr = [100, 300, 400, 500]
s = pd.Series(arr)
print(s)
  • pandas.DataFrame()可以将集合转化为二维数组
实例7
import pandas as pd
data = {'animal': ['cat', 'dog', 'snake'], 'age': [10, 20, 30], 'numbers': [50, 60, 70]}
df = pd.DataFrame(data)
print(df)

NumPy模块

  • NumPy模块支持大量的维度数组和矩阵运算
  • NumPy模块支持数据转型成数组形式,进而进行切割,合并,切片功能
  • 利用numpy.arange(a,b,c)来生成一维数组
实例8
import numpy as np
x = np.arange(10, 20, 2) #从10到20,以2为距离产生元素
#numpy.arange当只输入一个参数时默认从0开始,间隔1
print(x)
  • 切片
实例9
import numpy as np
x = np.arange(10)
b = x[2:7]
print(b)

Math模块

  • math.fabs()绝对值计算
  • math.ceil()比括号内大的最小整数

模块的定义

  • 模块是Pyhton中最高级别的程序组织单元
  • 凡是以.py结尾的文件都是一个模块
  • 调用一个模块实际上就可以使用该模块所包含的全部变量和函数
  • 每个人都是模块的创造者,也是模块的使用者

Turtlr模块

  • 一般用于绘制图形

实例10——绘制五角星

import turtle
turtle.goto(100, 0)
for i in range(50):    
    turtle.left(80)    #向左转
    turtle.fd(100)    #向前进
    turtle.left(125)    
    turtle.fd(105)


数据可视化

绘图模块

Matplotlib模块

  • 一般用于绘制2D图像
  • pyplot子库

Numpy模块

实例11折线图
import numpy as py
import matplotlib.pyplot as plt
x = [5, 6, 7, 8, 9, 10, 12, 25]
y1 = [1, 5, 3, 5, 2, 2, 1, 5]
y2 = [3, 4, 3, 2, 7, 9, 5, 4]
plt.plot(x, y1, 'o-', color='r')
# 生成折线图 o-为圆节点 s-为方节点
plt.plot(x, y2, 's-', color='g')
plt.xlabel('a')  
# 横坐标名
plt.ylabel('b')
# 纵坐标名
plt.show()
实例12散点图
import numpy as py
import matplotlib.pyplot as plt
n = 100
X = py.random.normal(0, 1, n)
Y = py.random.normal(0, 1, n)
# normal为正态分布,平均数为0,标准差为1,n个
plt.scatter(X,  Y, alpha=0.5)
# alpha为点的透明度
plt.xlim(-1.5, 1.5)
plt.xlim(-1.5, 1.5)
# x,y的范围
plt.xticks()
plt.yticks()
# 忽略x,y轴的标签
plt.show()

实例13直方图
import numpy as py
import matplotlib.pyplot as plt
data = py.random.rand(10000)
plt.hist(data,bins=n)
# n为几个区间组成,默认10个

3D绘图

  • 一般使用mpl_toolkits.mplot3d这个函数子库来实现

绘制动态柱状图

模块

  • Matplotlib
  • Pandas
  • IPyhton

文件处理——Python自动化办公

1.open()函数打开对象

  • 只读r
  • 只写w
  • 读写w+
  • 追加a
  • 方法:一.open(文件路径,文件打开方式
    二.with open(文件路径,文件打开方式) as 对象名(实验暂未可用)
实例14
f = open('C:/Users/over/Desktop/133.txt', 'a')
f.write('Hello !boy')
f.close()

2.读取文件

  • 每个空格也算一个字符
  • f.readline()
  • f.read
  • f为函数简称
实例15
f = open('C:/Users/over/Desktop/133.txt', 'r')
a = f.read()
print(a)

文件重命名

  • 需要将文件导入os内置模块中,os即操作系统
实例16
import os
os.rename('C:/Users/over/Desktop/133.txt', 'C:/Users/over/Desktop/233.txt')
os.remove('C:/Users/over/Desktop/233.txt')# 删除文件


实例17
import os
path = input('请输入文件路径:')
file_list = os.listdir(path)n = 0
for i in file_list:    
oldname = path + os.sep + file_list[n]    
newname = path + os.sep + 'a'+str(n+1)+'.txt'   
#os.sep相当于/
os.rename(oldname, newname)    
n = n+1

读取Excel文件

  • pandas中的read_excel函数可以读取Excel表
  • 函数其中的sheet_name[]参数可以读取第几张表或者几张一起
  • skip_footer = n 这个参数可以省略第几行
  • 导出Excel使用to_excel(路径)

读取csv文件

  • 还是使用pandas
  • 然后采用pandas.read_csv(‘地址’)
  • 导出csv使用to_csv(路径)

批量读取文件

import pandas as pd
import numpy as np
import os
import glob
path = '地址'
file = glob.glob(os.path.jion(path,'*.csv'))
d1 = []
for f in file
    dl.append(pd.read_csv(f))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值