Python编程从入门到实践看课笔记记录

Python编程从入门到实践看课笔记记录

先导篇

打印

#打印
print('')
#打印字符串中带'或者",在前面加\,即表示后面跟着的是字符
print('Let\'s go !')
#打印换行用\t
print('HELLO \tHI')
#多个换行内容打印,可以用三引号
print('''亲爱的祖国
        我爱你!''')

变量

python3.0之后支持中文作为变量名,例如:

什么='123'
print(什么)

字符串

改变字母大小写以及如何输出一段带变量的字符

name='zhang Feng'
#首字符都大写
print(name.title())
#所有字符大写
print(name.upper())
#所有字符都小写
print(name.lower)
#删除开头的空格
print(name.lstrip())
#删除结尾的空格
print(name.rstrip())
#删除开头和结尾的空格
print(name.strip())
#删除特定的前缀
print(name.removeprefix('zha'))
#删除特定后缀
print(name.removesuffix('eng'))
#输出一段带变量的字符
zhaohu=f'Hello! {name}.'
print(zhaohu)

用于计算的库math

import math
print(math.exp(1))
print(math.log2(8))

注释

  1. 快速注释和快速取消注释 ctrl+/
  2. 三引号可以注释多行
  3. 写代码时可以用\换行
content=name+'新年'\
+'快乐!'

数据类型

  1. 字符串str
#取出字符串的第3个字符,从0开始计数
print('Hello!'[3])
  1. 布尔类型bool
    只有True和False
  2. 空值类型NoneType
    只有一种None,表示完全没有值,例如当需要一个字符串,但还不知道值的时候,可以定义为
my_dog=None
  1. 对字符串求长度len()
print(len('Hello'))
  1. 返回数据的类型用type()
print(type(6.0))

列表及列表操作

  1. 创建列表用[],元素之间用,隔开
names=['Lusy','Mark','Jerry']
  1. 列表可以用len()获取长度,用索引找到对应元素
print(len(names))
print(names[0])
  1. 向列表更改和加元素、删除元素
#直接改变列表元素
names[0]='Jan'
#向列表末尾加元素
names.append('Hey')
#向列表的特定位置加元素,例如向第一个和第三个位置加元素
names.insert(0,'Anny')
names.insert(2,'Day')
#删除列表中特定元素
names.remove('Anny')
  1. 方法和函数的区别
#方法是    变量名.方法名()
names.append('Night')
#函数是     函数名(变量名)
len(names)
  1. 一些常用方法
nums=[1,12,0,-2,54]
#打印列表中的最大值和最小值
print(max(nums))
print(min(nums))
#打印排序好的列表
print(sorted(nums))
  1. 遍历整个列表
    for 变量名 in 可迭代对象:
pizza_list=['A','B']
for pizza in piza_list:
    print('我喜欢'+pizza)
  1. 创建数值列表
    range(起始值,结束值,步长) 其中结束值不在列表内

逻辑运算

and or not
优先级not>and>or

字典

  1. 创建一个字典(键值对)
    用{},key:value 不同键值对之间用,隔开
    字典中元素需要是不可变的,故不能用列表,但有一个类似于列表的元组tuple,用()
contacts={('张伟',23):'12389082',
          ('张伟',42):'12379082',
          ('张伟',26):'12369082'}
print(contacts[('张伟',23)])
  1. 更新字典
#加入键值对
contacts[('李一',23)]='1232345'
#删除键及其对应的值,用del
del contacts[('李一',23)]
#获得字典长度
len(contacts)
#判断某个键值对是否在字典里,用in
print(('张伟',23) in contacts)
  1. 遍历字典
temperature_dict={'A':36.4,
                  'B':37.5,
                  'C':38}
#获取所有的键
temperature_dict.keys()
#获取所有的值
temperature_dict.values()
#获取所有的键值对,以元组的形式存储,例如('A',36.4)
temperature_dict.items()
for staff_id,temperature in temperature_dict.items():
    if temperature >=38:
        print(staff_id)

格式化字符串

  1. format方法
year='龙'
name='老刘'
#第一种
message_content='''
金{0}贺岁,欢乐祥瑞。
金{0}敲门,五福临门。
给{1}及家人们拜年啦!'''.format(year,name)
#第二种
message_content='''
金{current_year}贺岁,欢乐祥瑞。
金{current_year}敲门,五福临门。
给{receiver_name}及家人们拜年啦!'''.format(receiver_name=name,current_year=year)
  1. f字符串
year='龙'
name='老刘'
message_content=f'''
金{year}贺岁,欢乐祥瑞。
金{year}敲门,五福临门。
给{name}及家人们拜年啦!'''
print(message_content)
  1. {score:.2f}表示将score对应的值保留两位小数

函数input

input获得的默认是字符串形式

user_age=int(input('请输入你的年龄'))

转化为整型用int;浮点型float;字符串str

for循环和while循环的区别

for循环有明确的循环对象或次数;而while循环的循环次数未知

while 条件:
      执行

代码的RAY原则

即don’t repeat yourself

函数

  1. 定义函数
def 函数名(变量):
    return 变量值

面向对象编程 OOP

Object Oriented Programming

  1. 面向过程编程——C
    即将某个任务拆分成一些具体的步骤,定义相应的函数去完成。
  2. 面向对象编程——Java
    首先模拟对象及其具有的性质(属性:放在类里面的变量)和能做的事情(方法:放在类里面的函数),创建一个类。
    类和对象的关系:类是创建对象的模板,对象是类的实例。
  3. 面向对象编程的三个性质(封装、继承、多态)

  1. 创建类
class CuteCat:
    def __init__(self,cat_name,cat_age,cat_color):
        self.name=cat_name
        self.age=cat_age
        self.color=cat_color
cat1=CuteCat('Jojo',2,'yellow')
print(f'小猫{cat1.name}的年龄是{cat1.age}岁,花色是{cat1.color}')
  1. 类的命名风格——Pascal命名法(例如UserAccount)
    变量命名风格:下划线命名法(例如user_name)
  2. 使用类和实例
class CuteCat:
    def __init__(self,cat_name,cat_age,cat_color):
        self.name=cat_name
        self.age=cat_age
        self.color=cat_color  
    def speak(self):
        print('喵'*self.age) 
    def think(self,content):
        print(f'小猫{self.name}在思考{content}...')-
cat1=CuteCat('Jojo',2,'yellow')
cat1.speak()
cat1.think('现在去抓沙发还是去撕纸箱')
  1. 继承
    如果子类有__init__()就会优先调用子类的__init__()中的属性值,而不继承父类的,若要在父类的基础上增加子类的属性,则要在子类的__init__()下调用super().init(继承的父类的属性)
def __init__(self,name,sex,age):
    super().__init__(name,sex)
    self.age=age

文件

  1. 文件位置
    分为绝对路径和相对路径,相对路径中.表示当前目录,…表示上级目录,再上级用…/…/./表示
  2. 读取文件
    库pathlib
from pathlib import Path
path = Path('content.txt')
#read_text一次性读取文件内容,且以字符串形式返回
content = path.read_text()
#splitlines将字符串根据换行拆分成列表
lines = content.splitlines()
print(content)
print(lines)
  1. 写文件
    write_text() 会新建文件,但若是原有文件则会先清空原有的文件内容

异常

  1. 捕捉异常
try:
    可能出现异常的代码
except 想要捕捉的异常:
    出现错误后执行错误
else:
    无错误时执行的语句
finally:
    无论是否发生错误都执行的语句

测试

  1. 测试函数
    assert 后面接布尔表达式
    库pytest
    fixture装饰器
    在这里插入图片描述
    在这里插入图片描述

项目

外星人入侵

  1. python的坐标原点位于左上角
  2. 在python中以下划线开头命名的方法约定俗成为私密方法,即只能在该类使用,不能在其他类使用
  3. round()表示取整

数据可视化

python安装库用清华源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 库名
绘制折线图

在这里插入图片描述

绘制散点图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下载数据
  1. csv是以逗号分隔的纯文本文件,读取文件如下
    在这里插入图片描述

  2. 获取列表的索引及对应的内容
    在这里插入图片描述

  3. 读取第一行
    在这里插入图片描述

  4. 处理json文件,使其形式上更具有可读性
    在这里插入图片描述

  5. 如何看zip的信息,将其转化为列表查看
    在这里插入图片描述

  6. 结果展示:地震相关散点图
    在这里插入图片描述

  • 14
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值