Python入门
安装python,Jupyter
没有大括号,利用缩进判断代码结构
语法
变量的定义
Python3 教程 | 菜鸟教程 (runoob.com)
-
定义变量,直接写
-
字符串可以用单引号,双引号,三引号(‘’'或 “”")引,引号的开始与结束须类型相同,三引号可以由多行组成。:
skill = ''' 唱歌 跳舞''' skill = """ 唱歌 跳舞"""
-
数组没有限制,可以数字加字符串
a=123
b=123.4
c="Hello word"
d=[1,2,3,"123"]
输入输出
-
使用print()
-
input(),可以让用户输入字符串,并放到一个变量里。
name=input() print('hi',name)
多行
Python 中一般以新行作为语句的结束标识,可以使用 \
将一行语句分为多行显示。如下所示:
a = 128
b = 1024
c = 512
d = a + \
b - \
c
如果包含在[]
、{}
、()
括号中,则不需要使用 \
。
标识符
- 第一个字符必须是字母表中字母或下划线 _ 。
- 标识符的其他的部分由字母、数字和下划线组成。
- 标识符对大小写敏感。
注释
- Python中单行注释以 # 开头
- 多行注释使用三个单引号(‘’')或者三个双引号(“”")
基本数据类型
整数 | 可以为任意大小、包含负数 |
浮点数 | 小数 |
字符串 | 以单引号 ' 、双引号" 、三引号 ''' 或 """ 括起来的文本 |
布尔 | true false |
空值 | None |
变量 | |
常量 |
运算符
运算符 | 作用 |
---|---|
** | a**b表示a的b次幂 |
// | 取整 |
列表
python没有数组,而是使用列表List
创建
列表中的所有元素都放到一个中括号中,相邻元素之间用,隔开
l=[1024,0.5,'python']
访问
通过索引访问列表中的值,还可以使用:截取范围内的元素
l = [1024, 0.5, 'Python']
print('l[0] -->', l[0])
print('l[1:] -->', l[1:])
输出:
l[0] --> 1024
l[1:] --> [0.5, 'Python']
更新
对现有元素进行修改,还可以使用append()向列表中添加新元素
l = [1024, 0.5, 'Python']
# 修改列表中第二个元素
l[1] = 5
# 向列表中添加新元素
l.append('Hello')
print('l[1] -->', l[1])
print('l -->', l)
删除:del
# 删除列表中第二个元素
del l[1]
常用方法
-
count():统计列表中某个元素出现的次数
l.count('d')
-
index():查找某个元素在列表中首次出现的位置(即索引)
-
remove():移除类表中某个值的首次匹配项
-
sort():对列表中元素进行排序
-
copy():复制此表
lc = l.copy()
元组
与列表相似,但元组是不可变的,常用于保存不可修改的内容
创建
元组中所有元素都放在一个小括号内,相邻元素之间用逗号隔开。
t = (1024, 0.5, 'Python')
访问
与列表类似
修改
元组中的元素并不能被修改,我们要用重新赋值的方式操作
t = (1024, 0.5, 'Python')
t = (1024, 0.5, 'Python', 'Hello')
删除
元组中的元素不能删除,只能删除一整个元组
t = (1024, 0.5, 'Python')
del t
常用方法
-
len():计算元组中元素个数
-
max() min()
-
tuple() 将列表转化为元组
l = ['d', 'b', 'a', 'f', 'd'] t = tuple(l)
字典
内容以键值对的方式存在
创建
d = {'name':'小明', 'age':'18'}
# 使用 dict 函数
# 方式一
l = [('name', '小明'), ('age', 18)]
d = dict(l)
# 方式二
d = dict(name='小明', age='18')
# 空字典
d = dict()
d = {}
访问
通过key进行访问
d = dict(name='小明', age='18')
d['name']
# 使用 get 方法
d.get('name')
修改
d = dict(name='小明', age='18')
d['age'] = '20'
清空
d.clear()
获取字典长度
len(d)
集合
集合(set)与字典相同均存储 key,但也只存储 key,因 key 不可重复,所以 set 的中的值不可重复,也是无序的。
使用
使用花括号或者set函数创建,如果创建空集合只能使用set函数
s = {'a', 'b', 'c'}
# 使用 set 函数
s = set(['a', 'b', 'c'])
# 空集合
s = set()
集合中的重复元素会自己过滤掉
添加元素可以用add或者update方法,若元素已存在,则不进行此操作
删除元素用remove方法
清空集合用clear方法
获取集合长度:len
语句
1.条件语句
if 判断条件1:
执行语句1...
elif 判断条件2:
执行语句2...
elif 判断条件3:
执行语句3...
else:
执行语句4...
2.循环
1.for循环
str = 'Python'
for s in str:
print(s)
2.while循环
while m > 0:
sum = sum + m
m = m - 1
3.pass,空语句,不做任何事情,一般用作占位语句,作用是保持程序结构的完整性
函数
1. def function(a,b):
return a+b;
res=function(123,456);
2. 要定义一个无任何功能的函数,函数体只写pass即可
def 函数名():
pass
3.当不确定参数个数时,可以使用不定长参数,在参数名前加*进行声明
def 函数名(*参数名):
函数体
4.用lambda定义匿名函数
lambda 参数 : 表达式
模块的导入:
import math
相当于C语言include
文件操作:
name='tyut'
//写文件
with open("123.txt","w")as f:
f.write(name)
//读文件
with open("123.txt","r")as f:
print(f.read())
创建:open()函数
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
file 表示将要打开的文件的路径,也可以是要被封装的整数类型文件描述符。
mode:是一个可选字符串,用于指定打开文件的模式,默认值是
'r'
(以文本模式打开并读取)。可选模式如下:
模式 | 描述 |
---|---|
r | 读取(默认) |
w | 写入,并先截断文件 |
x | 排它性创建,如果文件已存在则失败 |
a | 写入,如果文件存在则在末尾追加 |
b | 二进制模式 |
t | 文本模式(默认) |
+ | 更新磁盘文件(读取并写入) |
buffering:是一个可选的整数,用于设置缓冲策略。
encoding:用于解码或编码文件的编码的名称。
errors:是一个可选的字符串,用于指定如何处理编码和解码错误(不能在二进制模式下使用)。
newline:区分换行符。
closefd:如果 closefd 为 False 并且给出了文件描述符而不是文件名,那么当文件关闭时,底层文件描述符将保持打开状态;如果给出文件名,closefd 为 True (默认值),否则将引发错误。
opener:可以通过传递可调用的 opener 来使用自定义开启器。
写入
函数 | 描述 |
---|---|
write(str) | 将字符串写入文件,返回写入字符长度 |
writelines(s) | 向文件写入一个字符串列表 |
wf = open('test.txt', 'w', encoding='utf-8')
wf.write('Tom\n')
wf.writelines(['Hello\n', 'Python'])
# 关闭
wf.close()
若忘记关闭文件:可以使用with as语句,通过这种方式,程序执行完成后会自动关闭已经打开的文件
with open('test.txt', 'w', encoding='utf-8') as wf:
wf.write('Tom\n')
wf.writelines(['Hello\n', 'Python'])
file.truncate(0)//清空文件
读取
函数 | 描述 |
---|---|
read(size) | 读取指定的字节数,参数可选,无参或参数为负时读取所有 |
readline() | 读取一行 |
readlines() | 读取所有行并返回列表 |
定位
函数 | 描述 |
---|---|
tell() | 返回文件对象在文件中的当前位置 |
file.seek(offset[, whence]) | 将文件对象移动到指定的位置;offset 表示移动的偏移量;whence 为可选参数,值为 0 表示从文件开头起算(默认值)、值为 1 表示使用当前文件位置、值为 2 表示使用文件末尾作为参考点 |