栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python基础(一)特性、语法、数据类型

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python基础(一)特性、语法、数据类型

写在前面:

上次立的flag贼快就倒了,这么久一篇都没写,其实中间也没怎么学新东西(肯定没人想看复变函数或者电路基础的笔记吧),又因为中间猛的发烧了一段时间,鸽了这么久。再随便聊点别的,这周在杉果入了死亡循环玩,给的惊喜真挺大啊,应该是今年给我最大惊喜的游戏了,感觉可能真是TGA年度的有力竞争者了(之前还给同学讨论说2077随便顶下死亡循环来着,看来以后没玩还是别乱说,不过我还是私心认为2077至少可以进年度候选的)。然后因为新耳机到了这两周倒是花了很多时间在找歌上,买了耳机就随时都想听点歌嘿嘿,然后还产出了一篇天使吉米echo的测评(不是我说的那个新耳机)。

 


python特性、语法、数据类型

目录

写在前面:

python特性、语法、数据类型

特性

基本语法 

数据类型及其方法

数值类型

容器类型

字符串

 在python中单个字符也算字符串

自定义(面向对象编程)

彩蛋


特性
  1. 动态的、强类型语言
    1. 动态语言:类型检查发生在程序运行阶段(run time)的是动态类型语言
    2. 强类型:变量绑定类型后就会持有,不能混合运算
a = 9
a = a + 'name'
#会出现报错情况

基本语法 
  1. 命名规则
    1. 单下划线:不能直接访问
    2. 双下划线:不能被导入和其他变量访问
    3. 双下划线开头结尾:专用标识(如__init__)
    4. 类名的首字母大写
    5. python命名采用蛇形命名法则,命名尽量代表变量或函数实际含意
  2.  缩进原则
  3. 特殊关键字:
  4.  特殊运算符:

 **:幂运算

//:向下取整

:=:海象运算符,方便在调用中赋值

n = len(a)
if n > 6:
    print(f"{n}大于6")
"""
-----------------------------------------------
"""
if (n := len(a)) > 6:
    print(f"{n}大于6")

数据类型及其方法

数值类型
  1. Int float bool double。。。

容器类型
  1. list列表对象, tuple元组对象, dict字典对象, set集合对象
  2. List

    lst = [1,3,5] # list变量

    tuple

    tup = (1,3,5) # tuple变量

    dict

    dic = {'a':1, 'b':3, 'c':5} # dict变量

    set

    s = {1,3,5} # 集合变量

  3. list:
    1.  取值:list[n]
    2. 逆向索引:list[-n]
    3. 增加元素:append(obj)、insert(index.obj)、extend(seq)
    4. 删除元素:pop()、remove()、clear()
    5. index:找出第一个匹配位置的索引
    6. copy:复制列表
    7. sort:列表排序(默认从小到大,可将reverse参数改为Ture
    8. count&&Counter:统计元素出现次数
  4. turtle 元组不可变
  5. dict:
    1. 更新:#dict.update(dict2)把字典参数 dict2 的 key/value(键/值) 对更新到字典 dict 里
    2. 取值:dict[key]、dict.get(key,default)、dict.setdefault(key,default)
      1. #当使用dict[key]取字典里的值时,如果key存在,则返回key所对应的value,若不存在,则报KeyError错误
      2. #当使用dict.get(key,default)取值时,如果key存在,则返回Key所对应的value,若不存在,则返回default值
      3. #当使用dict.setdefault(key,default)取值时,如果key存在,则返回key对应的value,如果不存在,就插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None
    3. 删除:dict.pop()、dict.popitem()、dict.clear()
    4. 字面意思:dict.values()、dict.keys()、dict.items()
    5. #dict.fromkeys(seq,value) 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值,默认为none
    6. 复制:dict.copy()
      dict1 = {'name':'wwl','age':24}
      dict1['name']   >>>   'wwl'
      dict1['sex']
      dict1.get('sex','y')   >>>   'y'
      dict1.setdefault('sex','男')   >>>   '男'
      print(dict1)   >>>   {'name': 'wwl', 'age': 24, 'sex': '男'}
      
  6.  set:
    1. set中元素只会出现一次
    2. 添加元素:add(),update()
    3. 移除元素:pop()随机移除
    4. remove()移除指定

      discard()移除指定且不会报错

      clear()

    5. 集合之间常用的几种运算:- ,&, |, ^

字符串
  1.  在python中单个字符也算字符串

  2. 常用方法:
    1. strip:去除字符串前后空格
    2. replace:字符串替换
    3. join:合并字符串(有点连接的感觉)
    4. title:首字母大写
    5. find:找到位置索引

自定义(面向对象编程)
  1. 三大要素:封装、继承和多态
  2. 面向对象编程:把一组数据和处理数据的方法组成对象,把行为相同的对象归纳为类,通过封装隐藏对象的内部细节,通过继承实现类的特化和泛化,通过多态实现基于对象类型的动态分派。
  3. 类和对象:
    1. 类是对象的蓝图和模板,对象是类的实例
    2. 在面向对象编程的世界中,一切皆为对象,对象都有属性和行为,每个对象都是独一无二的,而且对象一定属于某个类。对象的属性是对象的静态特征,对象的行为是对象的动态特征。按照上面的说法,如果我们把拥有共同特征的对象的属性和行为都抽取出来,就可以定义出一个类
    3. 定义类:
      1. class + 类名
      2. 类的代码块中写一些函数,这些函数称为方法,方法就是对象的行为
      3. 方法的第一个参数通常都是self,它代表了接收这个消息的对象本身
class Student:

    def study(self, course_name):

        print(f'学生正在学习{course_name}.')

    def play(self):

        print(f'学生正在玩游戏.')
  1. 创建和使用对象:
    1. stu1=Student( )

Student.study(stu1, 'Python程序设计') || stu1.study('Python程序设计')

类. 方法(self,参数)self. 方法("参数")

  1. 初始化方法:
    1. 通过__init__为对象定义属性:
def __init__(self,name,age):

self.name=name

self.age=age

 

stu1=Student("李华",19)

stu1.study('Python程序设计')
  1. 打印对象:
    1. 以两个下划线__(读作“dunder”)开头和结尾的方法通常都是有特殊用途和意义的方法,我们一般称之为魔术方法或魔法方法
    2. __repr__魔术方法:
 def __repr__(self):

        return f'{self.name}: {self.age}'

students = [stu1, Student('王小锤', 16), Student('王大锤', 25)]

print(students)    # [骆昊: 40, 王小锤: 16, 王大锤: 25]
  1. 面向对象的支柱:
    1. 封装、继承和多态
    2. 封装:隐藏一切可以隐藏的实现细节,只向外界暴露简单的调用接口,我们在类中定义的对象方法其实就是一种封装
    3. Python内置的list、set、dict其实都不是函数而是类,如果要创建列表、集合、字典对象,我们就不用自定义类了

后面还有面向对象编程进阶相关,下次继续嘿

另:游戏荒可以试试死亡循环,真不错;

        可能还会开一个机器学习的专栏复习整理以及后面继续学习的内容,现在学了可以放上来的大多是sklearn的相关使用和简单数据分析,有兴趣可以点个关注 

彩蛋

上次爬虫的封面是四海兄弟的结尾

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/618938.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号