基础语法.:
#注释
print函数输出字符串可以用(‘ 或者”)输出换行内容用 三引号。
print(*objects, sep = ' ', end = '\n', file = sys.stdout, flush = False)
sep两个字符的间隔,end结尾处
name = input('请输入你的名字:')#函数赋值 name是字符串 可以强制转换
空字符串,列表,字典 都会判断为False
bool()函数显示参数的真假
and、or、not、in、not in用于布尔类型中的判断 and的优先级比or高
pass语句不做任何操作
print('血量:%s,攻击:%s' % (player_life,player_attack)) 省去连接字符串
{}.format(player_life)
split() 参数为分割符 str.join(sequence) 把字符串连接str连接符
windows中\来表示绝对路径,/来表示相对路径
数据类型:
字符串(str)、整数(int)和浮点数(float)-----声明变量不用指明类型。
数据类型() 转换为该数据类型-------int() 转换只取整数部分
数据类型的查询——type()函数
2**3 2的次幂 字符串拼接+
列表(数组):
变量名 = [ 数据 ] 数据可以包括各种数据类型
变量[a:b] 取从a到b的值b 不含a
可以添加新的元素只能添加一个,二维直接添加即可
添加:变量名.append() 删除del :students[:1]
pop() 函数用于移除列表中的一个元素,返回该元素的值。
元组 变量名(数据) 跟列表相似不可更改数据长度
字典(一一对应)
变量名 = {'键':值} 获取值 :变量名[ '键']
删除del:变量名[ '键'] 添加 :字典名[键] = 值
for中直接输出i是键,变量名[i]是值
判断与循环:
if 条件: 可以连续判断不用&&与|| 多重判断elif
while 条件:
. for…in…: 使用range(x)函数,就可以生成一个从0到x-1的整数序列。
range(a,b,c) a开始b结束c为步长
For+else :for循环正常结束,else中语句执行。如果是break的,则不执行
函数:
def name(参数):
语句
return y(可以省略)可以返回多个值
函数内部赋值变量仅在变量内部使用 global name 将局部变量变为全局变量
参数类型:位置参数、默认参数和不定长参数
默认参数必须放在位置参数之后 不定长参数前加上*,返回一个元组
模块:
import xxx impor xxx as x (别名)
from xxx import xxx 导入模块中的部分内容
if __name__ == '__main__':若当前模块是入口执行下面语句,若不是不执行
import time #调用time模块 time.sleep(secs) 设置时间间隔
import random random.randint(1,100) 生成(1,100之间的数)
random.choice()函数 从给定的参数中随机选择一个
Import csv
csv也是一种字符串文件的格式,它组织数据的语法就是在字符串之间加分隔符——行与行之间是加换行符,同行字符之间是加逗号分隔。
csv_file = open('demo.csv','w',newline='',encoding='utf-8')
加newline=' '参数的原因是,可以避免csv文件出现两倍的行距(就是能避免表格的行与行之间出现空白行)。加encoding='utf-8',可以避免编码问题导致的报错或乱码。
写入:
csv.writer(csv_file)函数来建立一个writer对象。
writer对象的writerow()方法写入,参数为列表
读取:
reader=csv.reader(csv_file)
import openpyxl 表格
写入:
Wb=openpyxl.Workbook()函数创建新的workbook(工作簿)对象
# wb.active就是获取这个工作簿的活动表,通常就是第一个工作表。
sheet = wb.active
# 可以用.title给工作表重命名。现在第一个工作表的名称就会由原来默认的“sheet1”改为"new title"。
sheet.title = 'new title'
# 把'漫威宇宙'赋值给第一个工作表的A1单元格,就是往A1的单元格中写入了'漫威宇宙'。
sheet['A1'] = '漫威宇宙'
# 把我们想写入的一行内容写成列表,赋值给row。
row = ['美国队长','钢铁侠','蜘蛛侠']
# 用sheet.append()就能往表格里添加这一行文字。
sheet.append(row)
# 保存新建的Excel文件,并命名为“Marvel.xlsx”
wb.save('Marvel.xlsx')
获取:
wb = openpyxl.load_workbook('Marvel.xlsx')
sheet = wb['new title']
wb.sheetnames 获取工作簿所有工作表的名字的
A1_cell = sheet['A1']
A1_value = A1_cell.value
邮件:
异常处理:
try……except……异常处理
类 :
class class_name:
属性
Def name(self): #实例方法都含有self self指向自身这个类,self不用传参数
实例名=类名() #实例化 __init__(self) #构造方法 __str__ Java中的toStrin()
继承:class 子类(父类):支持多继承,调用时就近原则
复写子类的方法:父类.方法(参数)
文件:
编码:'小吴'.encode('gbk') 解码:b'\xe5\x90\xb4\xe6\x9e\xab'.decode('utf-8')
开---读---关
r读,w写入覆盖原来的,a追加 图片和音频是以二进制的形式保存的
file1 = open(r'C:\Users\Ted\Desktop\test\abc.txt','r',encoding='utf-8')
filecontent = file1.read() file1.write("555"\n)
print(filecontent)
file1.close()
open(文件路径,方式,encoding=编码形式)函数
write()的参数必须是一个字符串,writelines()可以是序列
单行读取文件换行问题:f.readline().split("\n")[0]
多行换行:
for line in file.readlines():
line=line.strip('\n')
readlines() 按行读取 形成一个列表,第0个元素为第一行内容
为了避免打开文件后忘记关闭,占用资源或当不能确定关闭文件的恰当时机的时候,我们可以 用到关键字with with open...as