Python_入门_笔记

本文详细介绍了Python编程的基础知识,包括数据类型、列表操作、条件判断、字典使用和文件读写。讲解了如何生成和操作列表,如append、insert、sort等方法,并探讨了元组和字典的特性。此外,还涵盖了函数定义、类的创建及继承,以及异常处理和测试方法。对于初学者,提供了实用的代码示例和最佳实践指导。
摘要由CSDN通过智能技术生成

《Python编程从入门到实践》

二、数据类型

.title():开头大写
.upper()/.lower():大/小
.()rstrip:删除右侧空白
lstrip/strip:删除左侧/两端空白
** 表示乘方、次方
str 变字符串
#行注释


三、列表

[-n] last n value
.append(’’) 末尾添加
.insert(n,’’) 插入
del a[n] 删除
.pop(n) 删除并输出
.remove(’’) 根据值删除frist value
.sort 永久排序reverse=True
sorted() 临时排序
.reverse 反转列表
len(a) 长度


四、列表操作

4.1 生成列表

  1. a=list(range(n1,n2,step))
  2. a=[’’,’’]
  3. a=list(’’)
  4. a=[value for value in range(n1,n2)]
  5. a=b[n1:n2] Ps:a=b是同一个列表

4.2 列表基操

for a in b: 遍历b,缩进即循环
range(n1,n2,step) 生成n1—n2-1 value
list(’’) 生成列表
min()/max()/sum() 最小/最大/和
[n1:n2] 切片,n1到n2

4.3 元组

() round brackets initialize
可理解成const数组?

4.4 同一格式

PEP 8 格式要求
缩进 4个blank


五、if

if bool:elif bool:else:
布尔bool类型 True False
and/or 配合使用
(not) in 特定值是否(不)包含在列表
条件符号两边加blank


六、字典

6.1 使用

a={‘key’ : value , …} 键—值对
a[‘key’] 访问
a[‘key’]=value 添加
del a[‘key’] 删除

6.3 遍历

.items() 返回一个键值对list
.keys() 返回键list
.values() 返回值list
set() 剔除重复多余值

6.4 嵌套

表 存 典
典 存 表
典 存 典


七、输入 while

7.1 输入

input(‘explain’) 回车输入字符串
int(‘explain’) 输入数值
% 模运算符,返回余数

7.2 while

while a < n :
break 退出循环
continue 跳到下次循环延续
Ctrl+C 中止程序
.pop() 末尾出栈
.remove(‘value’) 删除特定值


八、函数

8.1 定义

“”" “”" 注释
注释错误解决:
开头添加#coding=gbk或#coding=utf-8

8.2 实参

function(param=value) 关键字实参,不用考虑位置
def function(param=value) : 设置默认值

8.4 传递列表

= 永久性修改
lis[ : ] 传递副本,不修改

8.5 任意数量实参

def function( * param) 创建空元组接收

8.6 模块

import module #导入模块,py文件,复制
module.function() #调用模块函数
from module import function1,function2 #导入特定函数,无需上述句号
from module import function as function2 #指定函数名
import module as module2 #指定模块名
from module import * #导入所有函数

九、类

class Name() : #创建类
	def __init__(self , param) :
		self.param = param
	def function(self) : #每个方法默认有self

9.3 继承

class Name2(Name) : #继承Name类
	def __init__(self , param) :
		super().__init__( param) #关联父子类
name.name2.param() #调用其他类方法,独立成类

十、文件

10.1 读取整个文件

with不用异常检测,区别繁琐try

with open('path') as file_name : #windows系统路径用反斜杆\
	contents=file_name.read() #读取全部
	print(contents.rstrip()) #删除右侧空白/换行符,strip左侧

with ... as ... #上下文的管理协议,简化异常检测try,文件只能内部使用
open() #返回文件对象

行读取

for line in file : #rstrip配合使用

.readlines() #列表储存,可用于with外部

10.2 写入

不同模式

open(path , '') #'w'写入,'r'读取,'a'附加(不覆盖),'r+'读写
.write('') #非自动换行

10.3 异常

预设异常,防止出现意外停止

try: 
	print(5/0) 
except ZeroDivisionError: 
	print("You can't divide by zero!")

try-except #防止异常停止
try-except-else #没异常执行else
.split() #空格为分隔存储列表
pass #什么都不做

存储数据

json格式可以保留原格式
json.dump()和 json.load()

import json #导入模块

data = [2, 3, 5, 7, 11, 13] 
filename = 'data.json' 

with open(filename, 'w') as file: 
	json.dump(data, file) #写入转存
	
with open(filename) as file: 
	numbers = json.load(file)

十一、测试

测试程序,发现问题bugs
unittest模块
测试function处理的parma1是否等于parma2

import unittest
class Test(unittest.TestCase) #继承TestCase
	def name(self): 
		 name = function(parma1) 
		 self.assertEqual(name, parma2)
unittest.main()

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值