day02 python
列表:
: 在[ ]内,可以存放多个任意类型的值;
并以逗号隔开。 一般用于存放学生的爱好;课堂的周期等等...
例如:
定义一个学生列表,可存放多个学生
list(['钱垚', '李小龙', '张全蛋', '赵铁柱'])
students = ['钱垚', '李小龙', '张全蛋', '赵铁柱']
print(students[1]) # 李小龙
student_info = ['杨波', 84, 'male', ['泡8', '喝9']]
print(student_info[3]) #取杨波同学的所有爱好
print(student_info[3][1]) #取杨波同学的第二个爱好
优先掌握的操作:
1.按索引存取值(正向存取+方向存取):即可存也可以取
print(student_info[-2]) #杨波
2.切片(顾头不顾尾,步长)
print(student_info[0:4:2]) #['杨波','male']
3.长度
print(len(student_info))
4.成员运算in和not in
print('杨波'in student_info) #True
print('杨波'not in student_info) #False
5.追加
student_info=['杨波',84,'male',['泡8','喝9']]
student_inf0.append('安徽最牛的学院,合肥学院')
6.删除
#删除列表中索引为2的值
del student_info[2]
print(student_info)
7.插入值:
student_info=['尹浩卿',95,'female',['尬舞','喊麦'],95]
#在student_info中,索引为3的位置插入“合肥学院”
student_info.insert(3,'合肥学院')
print(student_info)
8.插入值:.extend合并列表
student_info1=['尹浩卿',95,'female',['尬舞1','喊麦2'],95]
student_info2=['娄逸夫',94,'female',['尬舞1','喊麦2']]
9.把student_info2所有的值插入student_info1内
student_info1.extend(student_info2)
print(student_info1)
元组:
定义:在()内,可以存放多个任意类型的值,并以逗号隔开。
注意:
元组与列表不一样的是,只能在定义时初始化值,不能对其进行修改。
优点:
在内存中占用的资源比列表要小
列如:
tuple((1,2,3,'五','六'))
tuplel=(1,2,3,'五','六')
print(tuplel)#(1,2,3,'五','六')
优先掌握的操作:
1.按索引存取值(正向取+方向取):只能取
print(tuplel[2]) #
2.切片(顾头不顾尾,步长)
print(tuplel[0:5:3]) #(1,'五')
3.长度
print(len(tuplel)) #
4.成员运算in和not in
print(1 in tuplel) #True
print(1 not in tuplel) #False
5.循环
for line in tuplel:
#print(line)
#print默认end参数是\n
print(line,end='_')
if 判断:
语法:
if 判断条件:
# 若条件成立,则执行此处代码
逻辑代码
elif 判断条件:
# 若条件成立,则执行此处代码
逻辑代码
else:
# 若以上判断都不成立,则执行此处代码
逻辑代码
例如:
#判断两数大小
x=10
y=20
z=30
缩进快捷键,tab往右移动四个空格,shift+tab 往左移动四个空格
if x>y:
print(x)
elif z>y:
print(z)
else:
print(y)
文件处理:
open()
写文件
wt:写文本
读文件
rt:读文本
追加写文件
at:追加文本
注意:必须指定字符编码(字集码,是把字符集中的字符编码为指定集合中的某一对象,以便文本在计算机中存储和通过通信网络的传递)
以什么方式写,就得以什么方式打开。
执行python代码的过程:
1.先启动Python解释器,加载到内存中。
2.把写好的Python文件加载到解释器中。
3.检测Python语法,执行代码。
SyntaxError:语法错误!
打开文件会产生两种资源:
1.python程序
2.操作系统打开文件
例如:
参数一:文件的绝对路径
参数二:操作文件的模式
参数三:encoding指定的字符编码
f = open('file.txt', mode='wt', encoding='utf-8')
f.write('tank')
f.close() # 关闭操作系统文件资源
读文本文件 r==rt
f = open('file.txt', 'a', encoding='utf-8')
a.write('\n合肥学院')
a.close()
文件处理之上下文管理
with open()as f"句柄"
写
with open('file.txt', '', encoding='utf-8')as f:
f.write('墨菲定律')
读
with open('file.txt', 'r', encoding='utf-8')as f:
res = f.read()
print(res)
追加
with open('file.txt', 'a', encoding='utf-8')as f:
f.write('围城')
f.close()
对图片、音频、视频读写
rb模式,读取二进制,不需要指定字符编码
with open('cxk.jpg', 'rb')as f:
res = f.read()
print(res)
jpg = res
把cxk.jpg的二进制流写入cxk_copy.jpg文件中
with open('cxk_copy1.jpg', 'wb')as f_w:
f_w.write(jpg)
with 管理多个文件
通过with来管理open打开的两个文件句柄f_r,f_w
with open('cxk.jpg', 'rb')as f_r, open('cxk_copy2.jpg', 'wb') as f_w:
# 通过f_r句柄把图片的二进制流读取出来
res = f_r.read()
# 通过f_w句柄把图片的二进制流写入cxk_copy.jpg文件中
f_w.write(res)
def:
defind 定义。
函数名:必须看其名知其意。
( ):接受外部传来的参数。
注释:用来声明函数的作用。
Return:返回给调用者的值。
定义函数的三种形式:
1.无参函数
不需要接收外部传来的参数。
2.有参函数
需要接受外部传入的参数。
3.空函数
pass
1.无参函数
def login():
user=input('请输入用户名').strip()
pwd=input('请输入密码').strip()
if user=='tank'and pwd=='':
print('login successful!')
else:
print('login error!')
函数的内存地址
print(login)
函数调用
login()
2.有参函数
username,password用来接收外部传入的值
def login(username,password):
user=input('请输入用户名').strip()
pwd=input('请输入密码').strip()
if user==username and pwd==password:
print('login successful!')
else:
print('login error!')
函数调用
若函数在定义时需要接收参数,调用者必须为其穿传参
login('tank','')
3.空函数
ATM:
1.登录
2.注册
3.提现
4.取款
5.转账
6.还款
登录功能
def login():
#代表什么都不做
pass
还款功能
def repay():
pass
参数的参数:
#在定义阶段:x,y称之为形参。
def func(x,y): #x,y
print(x,y)
在调用阶段:10,100称之为实参。
func(10,100) #10 100
位置参数:
位置形参
位置实参
必须按照位置一一传参。
在定义阶段:位置形参
def func(x,y):#x,y
print(x,y)
#在调用阶段:10,100称位置实参。
func(10,100) #10 100
关键字参数:
关键字实参
按照关键字传参。
位置形参x,y
def func(x,y):
print(x,y)
在调用阶段:x=10,y=100称之为关键字参数。
func(y=111,x=10) #10 111
不能少传
func(y=111) #报错TypeError
默认参数:
在定义阶段,为参数设置默认值
def foo(x=10,y=20):
print(x,y)
不传参,则使用默认参数
foo()
传参,使用传入的参数
foo(200,300)
函数的嵌套
定义:在函数内部定义函数。
函数对象
函数的名称空间:
全局:
所有顶着头写的变量、函数...都称之为"全局名称空间"。
局部:
在函数内部定义的,都称之为“局部名称空间”。
名称空间加载顺序:
内置--->全局--->局部
名称空间查找顺序:
局部--->全局--->内置
例如:
函数的嵌套定义
def func1():
print('from func1...')
def func2():
print('from func2...')
函数对象
print(func1)
def f1():
pass
def f2():
pass
dic1={'':f1,'':f2}
choice=input('请选择功能编号:')
if choice =='':
print(dic1[choice])
dic1[choice]()
elif choice=='':
print(dic1[choice])
dic1[choice]()
x=10
名称空间
函数的嵌套定义
def func1():
x=20
print('from func1...')
print(x)
def func2():
print('from func2...')
func1()
列表:
: 在[ ]内,可以存放多个任意类型的值;
并以逗号隔开。 一般用于存放学生的爱好;课堂的周期等等...
例如:
定义一个学生列表,可存放多个学生
list(['钱垚', '李小龙', '张全蛋', '赵铁柱'])
students = ['钱垚', '李小龙', '张全蛋', '赵铁柱']
print(students[1]) # 李小龙
student_info = ['杨波', 84, 'male', ['泡8', '喝9']]
print(student_info[3]) #取杨波同学的所有爱好
print(student_info[3][1]) #取杨波同学的第二个爱好 优先掌握的操作:
1.按索引存取值(正向存取+方向存取):即可存也可以取
print(student_info[-2]) #杨波
2.切片(顾头不顾尾,步长)
print(student_info[0:4:2]) #['杨波','male']
3.长度
print(len(student_info))
4.成员运算in和not in
print('杨波'in student_info) #True
print('杨波'not in student_info) #False
5.追加
student_info=['杨波',84,'male',['泡8','喝9']]
student_inf0.append('安徽最牛的学院,合肥学院')
6.删除
#删除列表中索引为2的值
del student_info[2]
print(student_info)
7.插入值:
student_info=['尹浩卿',95,'female',['尬舞','喊麦'],95]
#在student_info中,索引为3的位置插入“合肥学院”
student_info.insert(3,'合肥学院')
print(student_info)
8.插入值:.extend合并列表
student_info1=['尹浩卿',95,'female',['尬舞1','喊麦2'],95]
student_info2=['娄逸夫',94,'female',['尬舞1','喊麦2']]
9.把student_info2所有的值插入student_info1内
student_info1.extend(student_info2)
print(student_info1)
元组:
定义:在()内,可以存放多个任意类型的值,并以逗号隔开。
注意:
元组与列表不一样的是,只能在定义时初始化值,不能对其进行修改。
优点:
在内存中占用的资源比列表要小
列如: tuple((1,2,3,'五','六'))
tuplel=(1,2,3,'五','六')
print(tuplel)#(1,2,3,'五','六')
优先掌握的操作:
1.按索引存取值(正向取+方向取):只能取
print(tuplel[2]) #2
2.切片(顾头不顾尾,步长)
print(tuplel[0:5:3]) #(1,'五')
3.长度
print(len(tuplel)) #5
4.成员运算in和not in
print(1 in tuplel) #True
print(1 not in tuplel) #False
5.循环
for line in tuplel:
#print(line)
#print默认end参数是\n
print(line,end='_')
if 判断:
语法:
if 判断条件:
# 若条件成立,则执行此处代码
逻辑代码 elif 判断条件:
# 若条件成立,则执行此处代码
逻辑代码 else:
# 若以上判断都不成立,则执行此处代码
逻辑代码 例如:
#判断两数大小
x=10
y=20
z=30
缩进快捷键,tab往右移动四个空格,shift+tab 往左移动四个空格
if x>y:
print(x)
elif z>y:
print(z)
else:
print(y) 文件处理:
open()
写文件
wt:写文本
读文件
rt:读文本
追加写文件
at:追加文本
注意:必须指定字符编码(字集码,是把字符集中的字符编码为指定集合中的某一对象,以便文本在计算机中存储和通过通信网络的传递)
以什么方式写,就得以什么方式打开。 执行python代码的过程:
1.先启动Python解释器,加载到内存中。
2.把写好的Python文件加载到解释器中。
3.检测Python语法,执行代码。
SyntaxError:语法错误! 打开文件会产生两种资源:
1.python程序
2.操作系统打开文件
例如: 参数一:文件的绝对路径
参数二:操作文件的模式
参数三:encoding指定的字符编码
f = open('file.txt', mode='wt', encoding='utf-8')
f.write('tank')
f.close() # 关闭操作系统文件资源 读文本文件 r==rt
f = open('file.txt', 'a', encoding='utf-8')
a.write('\n合肥学院')
a.close() 文件处理之上下文管理
with open()as f"句柄"
写
with open('file.txt', '', encoding='utf-8')as f:
f.write('墨菲定律') 读
with open('file.txt', 'r', encoding='utf-8')as f:
res = f.read()
print(res) 追加
with open('file.txt', 'a', encoding='utf-8')as f:
f.write('围城')
f.close() 对图片、音频、视频读写
rb模式,读取二进制,不需要指定字符编码
with open('cxk.jpg', 'rb')as f:
res = f.read()
print(res) jpg = res
把cxk.jpg的二进制流写入cxk_copy.jpg文件中
with open('cxk_copy1.jpg', 'wb')as f_w:
f_w.write(jpg) with 管理多个文件
通过with来管理open打开的两个文件句柄f_r,f_w
with open('cxk.jpg', 'rb')as f_r, open('cxk_copy2.jpg', 'wb') as f_w:
# 通过f_r句柄把图片的二进制流读取出来
res = f_r.read()
# 通过f_w句柄把图片的二进制流写入cxk_copy.jpg文件中
f_w.write(res)
def:
defind 定义。
函数名:必须看其名知其意。
( ):接受外部传来的参数。
注释:用来声明函数的作用。
Return:返回给调用者的值。 定义函数的三种形式:
1.无参函数
不需要接收外部传来的参数。
2.有参函数
需要接受外部传入的参数。
3.空函数
pass 1.无参函数
def login():
user=input('请输入用户名').strip()
pwd=input('请输入密码').strip() if user=='tank'and pwd=='123':
print('login successful!')
else:
print('login error!') 函数的内存地址
print(login) 函数调用
login() 2.有参函数
username,password用来接收外部传入的值
def login(username,password):
user=input('请输入用户名').strip()
pwd=input('请输入密码').strip() if user==username and pwd==password:
print('login successful!')
else:
print('login error!') 函数调用
若函数在定义时需要接收参数,调用者必须为其穿传参
login('tank','123') 3.空函数 ATM:
1.登录
2.注册
3.提现
4.取款
5.转账
6.还款 登录功能
def login():
#代表什么都不做
pass 还款功能
def repay():
pass 参数的参数:
#在定义阶段:x,y称之为形参。
def func(x,y): #x,y
print(x,y) 在调用阶段:10,100称之为实参。
func(10,100) #10 100 位置参数:
位置形参
位置实参
必须按照位置一一传参。 在定义阶段:位置形参
def func(x,y):#x,y
print(x,y) #在调用阶段:10,100称位置实参。
func(10,100) #10 100 关键字参数:
关键字实参
按照关键字传参。 位置形参x,y
def func(x,y):
print(x,y)
在调用阶段:x=10,y=100称之为关键字参数。
func(y=111,x=10) #10 111 不能少传
func(y=111) #报错TypeError 默认参数:
在定义阶段,为参数设置默认值 def foo(x=10,y=20):
print(x,y) 不传参,则使用默认参数
foo()
传参,使用传入的参数
foo(200,300) 函数的嵌套
定义:在函数内部定义函数。
函数对象
函数的名称空间:
全局:
所有顶着头写的变量、函数...都称之为"全局名称空间"。
局部:
在函数内部定义的,都称之为“局部名称空间”。
名称空间加载顺序:
内置--->全局--->局部
名称空间查找顺序:
局部--->全局--->内置 例如:
函数的嵌套定义
def func1():
print('from func1...')
def func2():
print('from func2...')
函数对象
print(func1)
def f1():
pass
def f2():
pass
dic1={'1':f1,'2':f2}
choice=input('请选择功能编号:')
if choice =='1':
print(dic1[choice])
dic1[choice]() elif choice=='2':
print(dic1[choice])
dic1[choice]() x=10 名称空间
函数的嵌套定义
def func1():
x=20
print('from func1...')
print(x)
def func2():
print('from func2...')
func1()
day02 python的更多相关文章
- day02 python流程控制 while循环 格式化输出 运算符 编码
day02 python 一.循环: while循环 while expression: while_suite 1.break 停止当前循环(如果多个循环嵌套, ...
- python之路:Day02 --- Python基础2
本节内容 1.列表操作 2.元组操作 3.字符串操作 4.字典操作 5.集合操作 6.文件操作 7.字符编码与转换 一.列表操作 定义列表 names = ['Ming',"Hua" ...
- Day02 - Python 基本数据类型
1 基本数据类型 Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) 1.1 数字 数字数据类型用于 ...
- day02 python数据类型
python里面常见的数据类型 目录 一.int 整形只有一个方法bit_length() 可以显示二进制长度 a = 10b = a.bit_length()print(b)1010 二.bool ...
- day02 Python列表的增删查改及常用操作
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如: li = [‘alex’,12 ...
- day02 Python 的模块,运算,数据类型以及方法
初识pyhton的模块: 什么是模块: 我的理解就是实现一个功能的函数,把它封装起来,在你需要使用的时候直接调用即可,我的印象里类似于shell 的单独函数脚本. python 的模块分为标准的和第三 ...
- 实训day02 python
一.数据类型 列表: 定义:在[]内,可以存放多个任意类型的值,并以逗号隔开: 一般用于存放学生的爱好,课堂的周期等. 定义一个学生列表,可存放多个学生 students = ['A','B','C' ...
- day02 python函数基础
'''''''''列表: 定义: 在[]内,可以存放多个任意类型的值, 并以逗号隔开. 一般用于存放学生的爱好,课堂的周期等等...'''# 定义一个学生列表,可存放多个学生# list(['钱垚', ...
- day02 Python完结
一. 常用数据类型及内置法 1 列表 定义: 列表是Python中内置有序.可变序列,列表的所有元素放在一对中括号“[]”中,并使用逗号分隔开: 当列表元素增加或删除时,列表对象自动进行扩展或收缩内存 ...
随机推荐
- MySQL计算字段
计算字段 数据库中存放的表是按列存放,可是有时客户机想获得的信息是若干列之间的组合,或者求和的值.这个组合或者求和的动作能够放在客户机应用程序来做.可是在数据库中实现更为高效. 这个新计算出来的结果就 ...
- QSettings读写注冊表、配置文件
简述 普通情况下.我们在开发软件过程中,都会缓存一些信息到本地,能够使用轻量级数据库sqlite.也能够操作注冊表.读写配置文件. 关于QSettings的使用前面已经介绍过了.比較具体,见" ...
- about service in android
注意:标红处! A Service is an application component representing either an application's desire to perform ...
- Centos 7 nginx-1.12.0编译安装
参考:http://www.nginx.cn/install 也不知道我的系统是否有这些依赖包,试试吧?缺少哪些我就装哪些吧,多踏点坑总是能学到点东西的. 获取nginx包 http://ngin ...
- 【Eclipse提高开发速度-插件篇】安装VJET插件,JS等提示开发插件
1.安装Apache Batik CSS 一般安装VJET插件会出现 Cannot complete the install because one or more required items co ...
- 全面解析布局(Grid & Canvas &StackPanel &Wrappanel) 转
写这篇文章前,特意在百度搜索了一下,发现目前网上介绍布局的文章不多,质量也不是很高.拿grid和canvas来讲,这两个布局容器还是有许多小细节值得讲的,如果你不了解的话,开发中经常会遇到一些让人匪夷 ...
- 2017 nodeJS
一.版本迅速更新 Chrome浏览器已经蹦到57版本了,是名副其实的版本帝,作为兄弟的Node.js也一样,1.0之前等了6年,而从1.0到8.0,只用了2年时间,现在已到9以上了 我们就数一下 从v ...
- 洛谷 P1312 [ NOIP 2011 ] Mayan游戏 —— 搜索+模拟
题目:https://www.luogu.org/problemnew/show/P1312 还是不擅长这种题,所以参考了一下TJ: 其实也很好搜,按字典序,先搜右移,再搜左移: 不交换相同颜色的两个 ...
- bzoj4889
http://www.lydsy.com/JudgeOnline/problem.php?id=4889 人傻常数大 bzoj上跑不过 洛谷上能过两到三个点 我写的是树套树啊 怎么跑的比分块还慢 每次 ...
- Mechanize抓取数据【Ruby】
创建: 2017/08/05 更新: 2018/01/08 修正: ele_inner_text -> ele.inner_text 补充: ...