python基础学习

python - (简洁、高效、适用范围广泛)

pythone能做什么?

测试开发、人工智能、网络爬虫、大数据开发…

python的安装

  1. 前往官网下载:https://www.python.org/downloads/ 下载最新版本
  2. 双击安装,安装教程不细说,随便百度都能百度到
  3. 安装成功后,允许cmd窗口,输入python,测试是否安装成功

hello world

第一个程序:输出 hello world!!!

# 运行 cmd 黑窗口
C:\Users\33242>python
Python 3.11.1 
>>> print("hello world!!!")
hello world!!!

下载pyCharm

  1. 前往官网下载最新版:https://www.jetbrains.com/pycharm/download/#section=windows
  2. 安装步骤及pj步骤参考:https://www.quanxiaoha.com/pycharm-pojie/pycharm-pojie-jihuoma.html

python基础语法

字面量

什么是字面量?
在代码中被写下来,固定的值,称之为字面量
常见的字面量
整数、浮点型、字符串…

注释

# 我是单行注释
"""
我是多行注释
"""

变量

是指在程序运行中,能够存储计算结果和表示值的概念

变量名 = 变量值

数据类型

# 查看数据类型
type("hello wold")
type(100)
type(100.00)

数据类型转换

int(100.00) # 将x转换为整数
floot(100) # 将x转换为浮点数
str(100) # 将x转换为字符串,任何数据都可以通过str转换为字符串

标识符

标识符就是,类的名字,方法的名字,变量的名字…

  1. 见名知意
  2. 下划线命名法
  3. 英文字母全小写

运算符

算术运算符描述实例
+两个对象相加 a + b 输出结果 30
-得到负数或是一个数减去另一个数 a - b 输出结果 -10
*两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200
/b / a 输出结果 2
//取整除返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0
%取余返回除法的余数 b % a 输出结果 0
**指数a**b 为10的20次方, 输出结果 100000000000000000000
赋值运算符描述实例
=赋值运算符把 = 号右边的结果 赋给 左边的变量,如 num = 1 + 2 * 3,结果num的值为7
复合赋值运算符描述实例
+=加法赋值运算符c += a 等效于 c = c + a
-=减法赋值运算符c -= a 等效于 c = c - a
*=乘法赋值运算符c *= a 等效于 c = c * a
/=除法赋值运算符c /= a 等效于 c = c / a
%=取模赋值运算符c %= a 等效于 c = c % a
**=幂赋值运算符c **= a 等效于 c = c ** a
//=取整除赋值运算符c //= a 等效于 c = c // a

字符串扩展内容

  1. 单引号定义法:hello = ‘world’
  2. 双引号定义法:hello = “world”
  3. 三引号定义法:hello = “”“world”“”
# 三引号定义法,和多行注释的写法一样,同样支持换行操作。
# 使用变量接收它,它就是字符串
# 不使用变量接收它,就可以作为多行注释使用。

#可以使用:\来进行转义
#单引号内可以写双引号或双引号内可以写单引号

数据输入

name = input()

判断语句

布尔类型

  • true 真
  • false 假

if语句的基本格式

age = 18
if age >= 18:
    print("成年了")

if-else语句的基本格式

if age>=18:
    print('true')
else:
    print('false')

if-elif-else语句的基本格式

if age>=18:
    print('true')
elif age>=0:
    print('输入有误')
else:
    print('false')

while循环的基础语法

count = 1
while(count<=10):
    print(f"第 {count} 个值")
    count = count + 1

for循环的基础语法

# for循环就是将字符串内容:依次取出
# for循环也被称为:遍历循环
name = 100
for i in name:
    print(i)

range语句

# 语法一 
range(num) # 表示从0开始到num结束,不含num本身
# 语法二
range(num1,num2) # 表示从num1开始,到num2结束,不包含num2本身
# 语法三
range(num1,num2,step) # 表示从num1开始,到num2结束,不包含num2本身,并设置数字直接的步长
# 例如:range(5,10,2) 得到的数据是:5,7,9

continue 和 break

# continue 中断本次循环,直接进入下一次循环
# break 终止循环

# 例continue
for i in range(10):
    print(i)
    continue
    print('B')
    
# 例break
for i in range(10):
    print(i)
    break
    print('D')

函数

函数是指,组织好的,可重复使用的,用来实现特定功能的代码块

# 上代码
name = 'zfc'
length = len(name)
print(name)
# len() 就是python内置的函数,组织好的,可重复使用的,实现特定功能的

函数的语法

    def 函数名(传入的参数):
        函数体...
        return # 返回值 # 如果返回值不需要则可以省略

函数的返回值定义语法

def add(a,b):
    return a+b
    
num = add(1,3)
print(num)

函数的说明文档

def add(a ,b):
    """
    add方法是一个加法的功能
    :param a: 数值1
    :param b: 数值2
    :return: 两数的结果
    """
    return a + b

数据容器

list(列表)

使用方式作用
列表.append(元素)向列表中追加一个元素
列表.extend(容器)将数据容器的内容依次取出,追加到列表尾部
列表.insert(下标, 元素)在指定下标处,插入指定的元素
del 列表[下标]删除列表指定下标元素
列表.pop(下标)删除列表指定下标元素
列表.remove(元素)从前向后,删除此元素第一个匹配项
列表.clear()清空列表
列表.count(元素)统计此元素在列表中出现的次数
列表.index(元素)查找指定元素在列表的下标
找不到报错ValueError
len(列表)统计容器内有多少元素

特点:

  • 可以容纳多个数据(上限为2**63-1、9223372036854775807个)
  • 可以容纳不同类型的数据 (混装 )
  • 数据是有序存储的 (有下标序号)
  • 允许重复数据存在
  • 可以修改 (增加或删除元素等
# 基本语法
# 字面量
    ['A','B','C','D','E']
# 定义变量
    num = ['A','B','C','D','E']
# 定义空变量
    num = [] or num = list()

# 根据列表的下表索引,取出数据
    print(num[0])
# 根据索引查找值
    number = num[0]
# 在指定位置插入新值
    num[0] = 'ZFC'
# 在列表中元素的插入
    nun.insert(1,'YH') # index1 元素的坐标 index2xiu'g
# 在列表中元素的追加
    num.append('F')
# 追加新的列表元素
    new_num = ['a','b','c']
    num.extend(new_num)
# 删除列表元素,根据下标
    # 语法一 
        del num[1] 
    # 语法二,pop可以获取返回值,
        text = num.pop(2) # text 就是你删除的元素
    # 语法三,根据内容删除
        num.remove('A')
    #语法四,清空列表
        num.clear()
# 统计元素在列表中的数量
    count = num.count('A')
    print(count)
# 统计列表中元素的数量
    length = len(num)
    print(length)

tuple(元组)

元组,被定义了就不能被修改,相当于只读的list

方法作用
index()查找某个数据,如果数据存在返回对应的下标,否则报错
count()统计某个数据在当前元组出现的次数
len(元组)统计元组内的元素个数

特点:

  • 可以容纳多个数据
  • 可以容纳不同类型的数据(混装)
  • 数据是有序存储的(下标索引)
  • 允许重复数据存在
  • 不可以修改(增加或删除元素等)
  • 支持for循环
# 基本语法
# 字面量
    ('A','B','C','D','E')
# 定义变量
    num = ('A','B','C','D','E')
# 定义空变量
    num = tuple()
    
# 元组的的相关方法和list的一样

字符串的定义和操作

操作说明
字符串[下标]根据下标索引取出特定位置字符
字符串.index(字符串)查找给定字符的第一个匹配项的下标
字符串.replace(字符串1, 字符串2)将字符串内的全部字符串1,替换为字符串2不会修改原字符串,而是得到一个新的
字符串.split(字符串)按照给定字符串,对字符串进行分隔不会修改原字符串,而是得到一个新的列表
字符串.strip(字符串) / 字符串.strip()移除首尾的空格和换行符或指定字符串
字符串.count(字符串)统计字符串内某字符串的出现次数
len(字符串)统计字符串的字符个数

特点

  • 只可以存储字符串
  • 长度任意(取决于内存大小)
  • 支持下标索引
  • 允许重复字符串存在
  • 不可以修改(增加或删除元素等)
  • 支持for循环
str = 'hello world'
# 通过下标获取索引
    str[0]
# index 方法
    str_index = str.index('w')
    print(str_index)
# 字符串替换
    str.replace('str1','str2') # 将str1 替换为 str2
# 字符串分割
    list =str.split(" ") # 根据空格分割
    print(list)
# 字符串去除空格
    str.strip() # 去除str字符串前后的空格
    str.strip('o') # 去除str字符串中的 o

序列的常用操作 - 切片

切片,就是从序列中,取出一个子序列

[A,B,C,D,E,F,G]
      ||
      ||
    [C,D,E]

# 语法
    序列[起始下标:结束下表:步长]    
# 起始下标表示从何处开始,可以留空,留空视作从头开始
# 结束下标(不含)表示何处结束,可以留空,留空视作截取到结尾
# 步长表示,依次取元素的间隔
    # 步长1表示,一个个取元素
    # 步长2表示,每次跳过1个元素取
    # 步长N表示,每次跳过N-1个元素取
    # 步长为负数表示,反向取(注意,起始下标和结束下标也要反向标记)

set(集合)

set集合,是无序的,所以不支持下标索引访问

操作说明
集合.add(元素)集合内添加一个元素
集合.remove(元素)移除集合内指定的元素
集合.pop()从集合中随机取出一个元素
集合.clear()将集合清空
集合1.difference(集合2)得到一个新集合,内含2个集合的差集原有的2个集合内容不变
集合1.difference_update(集合2)在集合1中,删除集合2中存在的元素集合1被修改,集合2不变
集合1.union(集合2)得到1个新集合,内含2个集合的全部元素原有的2个集合内容不变
len(集合)得到一个整数,记录了集合的元素数量

特点:

  • 可以容纳多个数据
  • 可以容纳不同类型的数据(混装)
  • 数据是无序存储的(不支持下标索引)
  • 不允许重复数据存在
  • 可以修改(增加或删除元素等)
  • 支持for循环
# 基本语法
# 字面量
    {'A','B','C','D','E'}
# 定义变量
    num = {'A','B','C','D','E'}
# 定义空变量
    num = {}
# 添加新元素
    num.add('add')
# 移除元素
    num.remove('A')
# 随机去除元素
    ran_element = num.pop()
# 清空集合
    num.clear()
# 取出集合1和集合2的差集(集合1有而集合2没有的)
    set1 = {123}
    set2 = {234}
    set3 = set1.difference(set2)
# 消除差集 在set1 里消除和 set2 相同的元素
    set1.difference_update(set2)
#将集合1和集合2组合成新集合
    set3 = set1.union(set2)
# 集合的长度
    len(set1)

字典的定义

字典,同样使用{}进行定义,不过里面的内容采用 key:value 的形式

操作说明
字典[Key]获取指定Key对应的Value值
字典[Key] = Value添加或更新键值对
字典.pop(Key)取出Key对应的Value并在字典内删除此Key的键值对
字典.clear()清空字典
字典.keys()获取字典的全部Key,可用于for循环遍历字典
len(字典)计算字典内的元素数量

特点:

  • 可以容纳多个数据
  • 可以容纳不同类型的数据
  • 每一份数据是KeyValue键值对
  • 可以通过Key获取到Value,Key不可重复(重复会覆盖)
  • 不支持下标索引
  • 可以修改(增加或删除更新元素等)
  • 支持for循环,不支持while循环
# 定义字典的字面量
    {key1:value1,key2:value2,key3:value3}
# 定义字典变量
    map = {key1:value1,key2:value2,key3:value3}
# 定义空字典
    map = dict()
# 通过 key 来获取内容
    map[key1]
# 新增元素
    map['zfc'] = 18
# 修改元素
    map['zfc'] = 19
        #更新和修改的语法是一样的,取决于key是否存在
# 删除元素
    name = map.pop('zfc') # 返回值是删除的元素
# 清空元素
    map.clear()
# 获取全部key
    map.keys()
# 获取字典中的元素数量
    len(map)

数据容器比较总结

列表元组字符串集合字典
元素数量支持多个支持多个支持多个支持多个支持多个
元素类型任意任意仅字符任意Key:Value / Key:除字典任意类型 / Value:任意类型
下标索引支持支持支持不支持不支持
重复元素支持支持支持不支持不支持
可修改性支持不支持不支持支持支持
数据有序
使用场景可修改、可重复的一批数据记录场景不可修改、可重复的一批数据记录场景一串字符的记录场景不可重复的数据记录场景以Key检索Value的数据记录场景

应用场景

  • 列表:一批数据,可修改、可重复的存储场景

  • 元组:一批数据,不可修改、可重复的存储场景

  • 字符串:一串字符串的存储场景

  • 集合:一批数据,去重存储场景

  • 字典:一批数据,可用Key检索Value的存储场景

    2022/12/14/13:00 ZFC

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值