一、 python基本语法
1.规则
默认情况,python文件以 utf-8 编码,所有字符串都是unicode字符串,指定不同编码:# -*- coding=utf-8 -*-
;
标识符不能以数字开头,不得使用python保留字,且区分大小写;
单行注释: # 快捷键(CTRL+/); 多行注释:'''xxx'''或"""xxx""";
换行:print(str1,...,end='\n');
缩进:一般用Tab,同一代码块缩进必须相同
2.模块导入
导入方式:
2.1、import 模块名
2.2、from 模块名 import 函数1,函数2,...
2.3、取别名 as
3.数据类型
常见六大数据类型:string、number、tuple、list、dict、set
;
查看方式:type; isinstance
3.1、number类型
整数型-int、浮点数-float、布尔值-bool
算术运算符:加法+、减法-、乘法、除法/、指数**、余数%、商值//;
赋值运算符:赋值=、加法赋值+=、减法赋值-=、乘法赋值=、除法赋值/=、余值赋值%=、幂赋值**=、取整赋值//=;
逻辑运算符:and-同真则真,or-一真则真,同假则假,not-取反,取真则假,取假则真(优先级:not>and>or
);
成员运算符:in、not in
in判断是否在序列中,在返回true,否则返回false;not in 相反
身份运算符:is、is not
is判断是否引用同一个对象,x is y类型id(x)=id(y),is not 相反
常用数字类型函数:
abs() 取绝对值
ceil() 返回上入整数
floor() 返回下舍整数
round(x,n) 四舍五入,n为保留位数
max() 最大值
min() 最小值
len() 长度
3.2、string类型
a、字符串,支持索引和切片,修改步长;
str='人生苦短,我学python' str[start:end:step]
b、索引值从左向右,从0开始,依次+1;
c、索引值从右向左,从-1开始,依次-1;
d、支持拼接:str1+str2;复制:str3*2:成员判断:in/not in
e、特殊符号:转义\或r;换行\n;制表\t;
f、格式化:
str4='小小';age=18
方法1:print('欢迎{}同学,今年{}岁'.format(str4,age))
方法2:print('欢迎%s同学,今年%d岁'%(str4,age))
方法3:print(f'欢迎{str4}同学,今年{age}岁')
g、常见字符串处理函数
g1.查找字符
find():找到字符返回匹配字符的开始索引值,否则返回-1
index():找到字符返回匹配字符的开始索引值,没有找到报异常
g2.按照字符串指定分隔符连接各元素
分隔符.join()
g3.按照指定的分隔符把字符串转成列表
str6.spilt('xx')
g4.替换字符串中部分字符
str7.replace(old,new)
g5.去首尾空格
str7.strip()
3.3、tuple类型
元组,以括号括起,每个元素间用','分隔,不可修改数据,支持切片
3.4、list类型
列表,以方括号括起,每个元素间用','分隔,可修改数据,元素类型可以为任意类型,支持切片
常用内置函数:
append() 单个添加元素
extend() 批量追加元素
insert(x,y) 指定索引位置x,添加元素y
pop() 默认移除最后一个元素,需添加索引
remove() 删除指定的元素
sort() 升序
clear() 清空元素
3.5、dict类型
字典,可以存储多个元素,元素以键值对形式存在,每个元素间用','分隔,不支持通过索引位置取值
取值:变量名[key]
创建一个字典,key确定,值不确定,设置value->默认值null
keys=['key1','key2','key3','key4']
info=dict.fromkeys(keys,'null')
字典合并:update(变量名)
删除元素:pop('key')
删除对象:del
3.6、set类型
集合,可以存储多个元素,支持不可变数据类型,不支持切片、索引
set1={str,number,tuple}
集合的运算
交集(intersection):A&B 返回AB共有元素
并集(union):A|B 返回AB所有不重复元素
差集(difference):A-B 返回A元素内不包含B的元素
异或(symmetric_difference):A^B 返回AB共有元素之外的元素
4、可变数据与不可变数据类型
可变数据类型:list\dict\set 值改变,ID值(内存地址)不变
不可变数据类型:number\string\tuple 值改变,ID值改变
5、条件语句
5.1 条件判断
if 条件1:
结果1
elif 条件2:
结果2
...
else:
结果3
5.2 while循环
while 循环条件
if 条件1
结果1
else:
结果2
*注意: while循环注意改变循环条件,避免出现死循环(无限循环)
5.3 for循环
for 循环变量 in 序列
代码块
for循环遍历序列中每一个元素
`# 用for循环求和1+2+3...+99+100
sum=0
for i in range(1,101):
sum +=i
print(sum)
for x in range(1,10):
for y in range(1,x+1):
print(f'{x}{y}={xy}',end=' ')
print()
list1 = [1, 3, 10, 9, 21, 35, 4, 6]
for i in range(len(list1)-1):
flag = False
for j in range(len(list1)-1-i):
if list1[j] > list1[j + 1]:
list1[j], list1[j + 1] = list1[j + 1], list1[j]
flag = True
if not flag:
pass
print(list1)
for i in range(100,1000):
nu=int(str(i)[0])3+int(str(i)[1])3+int(str(i)[2])**3
if nu ==i:
print(i,end=' ')
pass
`