程序的格式框架
冒号+缩进:
python语法功能的一部分,表达代码所属关系的唯一方式
每次缩进的前一行代码需要加冒号
缩进需求:
分级语句:if-elif-else
循环语句:for,while
异常处理:try-except-else-finally
函数定义:def
类定义 :class
同一个文件中缩进相同即可
注释
单行注释:
#
多行注释:
‘’’ ‘’’
续航符:
\
要求:
续行符后不能存在空格
续行符后必须直接换行
命名与保留字
变量:
变量使用无需定义,可直接使用
使用等号 = 为变量幅值
命名:设定标识符的过程,用于变量、函数、类名
python可支持中英文
命名采用大小写字母、数字、下划线
大小写敏感、首字符不能是数字、不与保留字相同
* _* 尽量不用下划线或双下划线开头
保留字:
数据类型
九种数据类型,概括介绍
- 数字类型
- 字符类型
- 组合类型
数字类型:
整数类型:
与整数含义相同,无取值范围
包括二进制、八进制、十进制、十六进展
浮点类型:
与实数含义相同
表示方法包括常规方法和科学计数法(4.3e-3 = 0.0043e表示a*10
复数类型:
字符类型:
字符串类型:
‘ ‘ ,” “二者没什么区别
索引:s[N]通过序号获取单个字符"字符串"[1]='串'
切片:通过s[N:M]获取N到M(不含)子串"字符串"[0:-1]='字符'
字节串类型:
组合类型:
集合类型:
元组类型
列表类型:
字典类型:
赋值与分支语句
赋值语句:
赋值
同步赋值:
<变量1>,<变量2>,<变量3>=<数值1>,<数值2>,<数值3>
可直接进行变量交换
分支语句:
if
elif
if-elif-else输入输出
输入:input()
输出:print()
输出单个字符串
输出多个字符串a=" ",b=" "
print(a,b)
变量与字符串混合输出
回声程序:将输入进行输出print(input())
评估函数:eval()
去掉参数最外侧引号,并将其当做python语句执行
基本计算
浮点类型
#round 取整函数
>>>round(12.3*0.1, 2)
1.23
>>>round(0.1 + 0.2, 1)
0.3
#小数位数保留
>>>"{:.2f}".format(1234.56789)
'1234.57'
>>>"{:.1f}".format(1234.56789)
'1234.6'
>>>"{:.10f}".format(1234.56789)
'1234.5678900000'
>>>"{:,.1f}".format(1234.56789)
'1,234.6'
>>>print("{:,.1f}".format(1234.56789))
1,234.6
>>>"{:.1e}".format(1234.56789)
'1.2e+03'
复数
>>>type(1+2j)
<class 'complex'>
>>>complex(123)
(123+0j)
(12+34.5j)
>>>z.imag
34.5
>>>z.real
>>>type(z.imag)
<class 'float'>
>>>type(z.real)
<class 'float'>
>>>y=1+2j
>>>print(y*z)
(-57+58.5j)
日志文件分析
操作
文件读写操作:
python3中所有的数据类型及文件,以面向对象的方式处理
打开文件:
读取文件:
一次性全部读入:
按行读入:
循环语句:
遍历循环:由for和in组成,从遍历结构中逐一获得元素进行循环
无限循环:使用while保留字,由条件控制循环过程
反复执行语句块,直到条件不满足时结束
异常处理:对程序执行异常的处理机制,提高用户体验
split():
代码
try:
f = open("sensor-data.txt","r")
avg,cnt = 0,0
for line in f:
ls =line.split()
cnt += 1
avg += eval(ls[2])
print("温度平均值时:{:.2f}".format(avg/cnt))
f.close
except:
print("文件打开错误")
中文词频统计
库引用:
- 直接引用库名:
import<库名> 或 import<库名1>,<库名2>
使用方法:<库名>.<函数名>
- 因用库的函数
from <库名> import <函数名> 或者 from <库名> import *
使用方法:<函数名> 【若函数名重复,则以最后定义的函数为准】
- 引用库别名:
import <库名> as <库别名>
使用方法:<库别名>.<函数名>