WenRou's Blog

新浪微薄腾讯微薄

最新碎语:测试图片碎语哦

您的位置:WenRou's Blog >Python> Python第十五天 :Python基础复习+文件处理

Python第十五天 :Python基础复习+文件处理

变量常量

变量命名规则

1、变量名只能由字母、数字、下划线组成

2、变量名的首个字符不可以是数字

3、不能使用Python关键字作为变量名

变量命名方式

1、驼峰式

AgeOfOldboy = 56

NumberOfStudents = 80

2、下划线(Python官方推荐)

age_of_oldboy = 56

number_of_students = 80

不建议的方式: 变量名使用中文、拼音; 变量名过长; 变量名词不达意; 

常量

常量即不变的量, 在程序运行过程中不会改变的量。在Python中并没有语法的常量, 一般以全部为大写的变量名来代表常量。

AGE_OF_OLDBOY = 56

用户与程序交互

通过input, 可以在执行脚本时进行输入操作

name = input("What is your name?") print("Hello " + name)

代码注释分单行和多行注释, 单行注释用#,多行注释可以用三对双引号""" """

代码注释的原则: 

1、不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可

2、注释可以用中文或英文,但不要用拼音

基本数据类型

在Python中, 定义变量时并不需要强制指定类型

数字

复制代码
#int 整型, 在32位系统中, 位宽是32位; 在64位系统中, 位宽是64位 a = 2**60 type(a) # <class 'int'> #long 长整型, 在Python中, 理论位宽根据内存决定 #注: Python3中不再有long类型 b = 2**64 type(b) # 在Python3中 <class 'int'> #float c = 3.4 type(c) # <class 'float'>
复制代码

字符串

复制代码
#所有加了引号的字符都被认为字符串 #单引号与双引号没有区别 name = "Leney" hometown = 'ShangHai' msg = '''My name is Leney''' #多引号可以直接定义多行字符串中 lyric = ''' Gotta remember we live what we choose
It’s not what you say, it’s what you do
And the life you want is the life you have to make '''
复制代码

布尔型

#布尔值, 只有两个值True和False, 用于逻辑判断 a = 3 b = 10 print(a > b) # False print(a < b) # True

流程控制

分支

复制代码
a = 3 #单分支 if a > 0: print("The number is a positive integer") #双分支 if a > 0: print("The number is a positive integer") else: print("The number is not a positive integer") #多分支 if a > 0: print("The number is a positive integer") else if a < 0: print("The number is a negtive integer") else: print("The number is zero")
复制代码

循环

复制代码
#while #打印从0到100的循环程序 count = 0 while count <= 100: print("loop ", count)
    count += 1 #while的死循环, 理论上回一直执行 count = 0 while True: print("loop ", count)
    count += 1 #终止循环 count = 0 while count <= 100: print("loop ", count) if count == 5: break #通过break会直接终止该循环 count += 1 #continue语法 #以下为只输出0到100中5的倍数 count = 0 while count <= 100:
    count += 1 if count % 5: continue print("loop ", count) #while else 语法 count = 0 while count <= 5:
    count += 1 print("loop ", count) else: print("循环已正常执行结束")


Python的数据集

列表

列表是一个数据的集合, 集合内可以存放任何数据类型, 可对集合进行方便的增删改查操作

L1 = [] # 定义空列表 L1 = list() # 定义空列表 L2 = ['a', 'b', 'c', 'd'] # 存放4个值的列表, 索引为0-3 L3 = ['abc', ['def', 'ghi']] # 列表嵌套

列表切片

切片可以将列表通过一定的范围进行裁剪, 返回一个新的列表

复制代码
words= ['apple', 'ball', 'cat', 'dog', 'echo', 'follower', 'group'] # 取下标1到3的值, 不包含3 result = words[1:3] # 取除最后一个值以外的值 result = words[0:-1]
result = words[:-1] # 从0开始可以省略 # 取下标3到最后一个 result = words[3:] # 区偶数下标的值 result = words[::2]
复制代码

列表的增加

复制代码
# 追加  追加会再列表的末尾增加元素 words.append('happy') # 插入  将元素插入到指定索引的位置 words.insert(4, 'happy') # 扩展  将传入的所有元素追加到到原列表的末尾 extend_words = ['honey', 'item', 'joker']
words.extend(extend_words)
复制代码

列表的删除

复制代码
# 按索引删除 del words[4] # 按值删除 words.remove('cat') # 将最后一个值返回并从列表中删除 words.pop() # 将指定索引的值返回并从列表中删除 words.pop(4)
复制代码

列表的修改

# 指定索引进行修改 words[4] = 'hello' # 指定范围进行修改, 若元素不足, 将自动增加 words[3:6] = 'great'

 

元组

元组与列表相似, 存储一组元素, 但元组在创建之后无法进行修改, 又叫只读列表。

元组使用()定义

names = () # 定义空元组 names = ('leney', 'james', 'hank') # 定义一个长度为3的元组

字典

字典是一种 key-value 即键值对类型进行存储的数据集合。

字典使用{}进行定义, 且key不能重复

复制代码
# 定义一个字典 info = { 'phone': 'Meta10', 'computer': 'MSI', 'display': 'DELL' } # 定义一个嵌套的字典 info = { 'phone': 'Mata10', 'computer': { 'MSI': '家用游戏', 'ASUS': '编码办公' }, 'display': 'DELL' }
复制代码

集合

集合石一个无序, 不重复的数据组合。通过将列表转化成集合可以起到去重的作用。

通过{}定义

复制代码
# 定义一个集合 S1 = {1, 2, 3, 4} # 通过列表转化成集合 L2 = [1, 3, 5]
S2 = set(L2) # {1, 3, 5}
复制代码

集合可以用于进行关系测试

复制代码
S1 = {1, 2, 3, 4}
S2 = {1, 3, 5} # 交集 S1.intersection(S2) # {1, 3} # 差集 S1.difference(S2) # {2, 4}  S2.difference(S1) # {5} # 对称差集  不同时存在与S1与S2中的元素 S1.symmetric_difference(S2)
S1 ^ S2 # {2, 4, 5} #并集 S1.union(S2)
S1 | S2 # {1, 2, 3, 4, 5}


文件处理

文件操作流程

复制代码
# 1、打开文件, 得到文件句柄 f = open('a.txt', 'r') # 2、通过句柄对文件进行操作 data = f.read() # 3、关闭文件 f.close()
复制代码

打开模式

Python可以打开文本文件, 读取其中的内容; 也可以打开非文本文件用于存储和传输

    • r: 只读模式, 文件必须存在, 否则会抛出异常
    • w: 只写模式, 无法读取文件内容, 文件不存在会创建文件, 若文件存在则会清空原数据
    • a: 只追加模式, 不可读, 文件不存在会创建, 存在则会再文件末尾进行追加内容


    • b模式: 以字节的形式对文件进行读写, 可以与三种操作方式组合, rb, wb, ab, 用于非文件文件的读写。
    • +模式: 可以同时对文件进行读写操作, 可以与三中操作方式组合, r+, w+, a+
复制代码
f = open('names.txt', 'w')
f.write('leney, Python工程师')
f.close()

f = open('names.txt', 'a+')
f.write('hank, PHP工程师') print("content", f.read())
f.close()
复制代码

函数基础

一段实现某个特定功能的代码块。在Python中分为内置函数自定义函数

    • 内置函数: 在Python系统中, 为了方便开发, 针对一些常用功能做好的函数

    • 自定义函数: 开发人员根据需求, 用于实现特定功能的函数

定义函数

# 定义一个输出一段字符串的函数 def namePrint(): print('leney, hank, alert')

函数参数

Python的函数参数有形参和实参

    • 形参: 在被调用时才分配内存, 在调用结束时释放。形参只在函数的内部有效。
    • 实参: 在函数调用时, 必须有确定的值, 并传给形参。


此外, Python的参数传入也有特色的方式

复制代码
def stu_register(name, age, course='Python', country='CN'): print("----注册学生信息----") print("姓名: ", name) print("年龄: ", age) print("国籍: ", country) print("课程: ", course) #1、位置参数: 按函数的参数定义顺序传入 stu_register('leney', 22, 'PY', 'EN') #2、关键字参数: 通过关键字绑定参数传入 stu_register('leney', course = 'PY', age = 22, 'EN') #3、默认参数: 若无传入到该参数的值, 则使用默认值 stu_register('leney', 22) #4、非固定参数: 若不确定参数的长度, 则使用*args的形式, 会将传入参数变成一个元组; 使用**kwargs可以把传入的参数变成dict形式 def foo(*args): print(args)
foo(1,2,3) def foo2(**kwargs): print(kwargs)
foo2(a=1, b=2, c=3)


---

转载请注明本文标题和链接:《Python第十五天 :Python基础复习+文件处理

发表评论

23 + 5 =
路人甲 表情
看不清楚?点图切换 Ctrl+Enter快速提交