Python基础

Python基础

1.认识Python

1.1什么是Python

Python是一个多范式,通用,解释的高级语言。Python允许程序员使用不同的编程风格来创建简单或复杂的程序,获得更快的结果并编写代码,就像用人类语言说话一样。

1.2Python的应用场景
  • Web应用开发
  • 操作系统管理、服务器运维的自动化脚本
  • 科学计算
  • 桌面软件
  • 游戏
  • 人工智能

2.执行Python程序的方式

2.1IDE
  • 集成开发环境( IDE ,Integrated Development Environment)—— 集成了开 发软件需要的所有⼯具,⼀般包括以下⼯具:
  • Pycharm 就是 开发Python ⽐较优秀的 IDE
2.2文本模式
  • Python代码 保存在文件 中,解释器对文件逐行解释执行
  • 在终端中输入解释器名,在输入要执行的文件名
# windows中以文本模式执行python程序
$ py -3 xxx.py

Python 源程序就是⼀个特殊格式的⽂本⽂件,可以使⽤任意⽂本编辑软件做 Python 的开发 Python 程序的

⽂件扩展名 通常都是 .py

2.3交互模式
  • 直接在终端中运⾏解释器,⽽不输⼊要执⾏的⽂件名

  • 在 Python 交互模式 中 边输⼊边执⾏ Python代码,会⽴即看到程序执⾏结果

  • 退出交互模式

    • 之间输入 exit( )

      • >>> exit()
        
    • 使用热键退出

      在 python 解释器中,windows按热键 ctrl + z 可以退出解释器


3.注释

3.1 注释的作用

使用自己熟悉的语⾔,在程序中对某些代码进⾏标注说明,增强程序的可读性

3.2 单行注释(行注释)
  • 以 # 开头, # 右边的所有东西都被当做说明⽂字,而不是真正要执⾏的程序,只起到辅助说明作用

  • 示例代码如下:

    # 这是一个单行注释
    python("Hello Python")
    

    为了保证代码的可读性,# 后面建议先添加一个空格,然后在编写相应的说明文字

  • 单行注释快捷键: ctrl + /

在代码怀念增加的单行注释
  • 在程序开发时,通用可以使用# 在代码后面(旁边)增加说明性的文字

  • 但是,需要注意的时,为了保证代码的可读性,注释和代码之间 至少要有 两个空格

  • 示例代码如下:

    print("Hello Python")  # 输出'Hello Python'
    

4.变量和类型

  • 变量原子数学,在计算机语言中可以理解为 存储数据的容器
4.1 变量的定义
  • 在Python中,对变量 首次复制会定义变量,再次复制自会修改变量的值

  • 等号( = )用来给变量赋值

    • = 左边是一个变量名
    • = 右边是存储在变量中的值
    变量名 =
    # 定义变量
    qq_num = "100100"
    # 获取变量的值
    print(qq_num)
    # 修改变量的值
    qq_num = "888888"
    print(qq_num)
    
4.2变量的类型
  • 程序中:

    为了区分变量的不同的功能,变量使用不同的类型的

4.3变量的类型
  • 在 Python 中定义变量是不需要指定类型(在其他很多⾼级语⾔中都需要)
  • 数据类型可以分为 数字型 和 非数字型
  • 数字型
  • 整型 ( int )
  • 浮点型( float )
  • 布尔型( bool )
    • 真 True 数学运算时表示 1
    • 假 False 数学运算时表示 0
  • 复数型 ( complex )
    • 主要⽤于科学计算,例如:平⾯场问题、波动问题、电感电容等问题
  • ⾮数字型
    • 字符串
    • 列表
    • 元组
    • 字典
  • 使⽤ type 函数可以查看⼀个变量的类型

5.变量的命名

名字需要有见名知义的效果

5.1标识符
  • 开发⼈员 在程序中⾃定义的⼀些符号和名称。标示符是⾃⼰定义的, 如 变量 名函数名
  • 标示符可以由 字⺟下划线数字 组成
  • 不能以数字开头
  • 不能与关键字重名
5.2关键字
  • 关键字 就是在 Python 内部已经使⽤的标识符

  • 关键字 具有特殊的功能和含义

  • 开发者 不允许定义和关键字相同的名字的标示符

    查看 Python 中的关键字

    import keyword
    print(keyword.kwlist)
    
    • import 关键字 可以导⼊⼀个 “⼯具包
    • 在 Python 中不同的⼯具包,提供有不同的⼯具

注意 Python 中的 标识符区分大小写的

6.输出

普通的输出
  • Python的变量的输出

    # 打印提示
    print("Hello World")
    print("Hello Python")
    

2.运算符&条件判断&循环

1.比较运算符

运算符描述
==检查两个操作数的值是否 相等 ,如果是,则条件成立,返回True
!=检查两个操作数的值是否 不相等 ,如果是,则条件成立,返回True
>检查左操作数的值是否 大于 右操作数的值,如果是,则条件成立,返回True
<检查左操作数的值是否 小于 右操作数的值,如果是,则条件成立,返回True
>=检查左操作数的值是否 大于或等于 右操作数的值,如果是,则条件成立,返回True
<=检查左操作数的值是否 小于或等于 右操作数的值,如果是,则条件成立,返回True
  • 字符串和数字不能比较
  • 字符串比较: “Z” > “a” > “A” > ”数字“

2.条件语句

2.1开发中的应用场景

条件语句在开发中主要进行 逻辑判断

2.2 if 语句体验

在 Python 中,if 语句 就是用来进行条件判断的,格式如下:

if 要判断的条件:
	条件成立时,要做的事情
    ...

    
if 要判断的条件:
	条件成立时,要做的事情
    ...
else:
    条件不成立时,要做的事情
    ...

3.循环

3.1程序的三大流程
  • 在程序开发中,一共有三种流程方式:

    • 顺序——从上向下
    • 分支——根据条件判断,决定执行代码的分支
    • 循环——让 特定代码 重复 执行
3.2while 循环基本使用
  • 循环的作用就是让 指定的代码重复执行
  • while 循环最常用的应用场景就是让 执行的代码 按照 指定的次数 重复执行
  • 需求——重复执行代码
3.3 while 语句基本语法
变量设置初始值

while 条件(判断 变量是否符合条件):
	条件满足时,做的事情1
	条件满足时,做的事情2    
	条件满足时,做的事情3    
    ...(省略)...
    
    修改变量
    
注意:
  • while 语句中的缩进部分是一个 独立的代码块
第一个 whiel 循环
  • 使用循环语句一句话搞定

    # 1.定义重复次数计数器
    i = 1
    
    # 2.使用 while 判断条件
    while i <= 执行次数:
    	# 要重复执行的代码块
        。。。
        # 处理计数器 i
        i = i + 1
       
    
    死循环

    由于程序员的原因,忘记 在循环内部 修改循环的判断条件 ,导致循环持续执行,程序无法终止

4.break 和 continue

| break 和 continue 是专门在循环中使用的关键字

  • break 某一条件满足时,不再执行循环体中后续重复的代码,并 退出循环
  • continue 某一条件满足时, 不在执行本次循环体中后续重复的代码,但进入下一次循环判断

4.1break

  • 在循环过程中,如果某一个条件满足后 再希望 循环继续执行 ,可以使用 break 退出循环

4.2continue

  • 在循环过程中,如果某一个条件满足后希望执行本次循环代码但是又不希望退出循环,可以使用 continue
  • 也就是:在整个循环过程中,只有某些条件,不需要执行循环代码,而其他条件都需要执行
  • 需要注意: 使用 continue 时,条件处理部分的代码,需要特别注意,不小心会出现 死循环

3.常用数据类型

1.字符串

1.1字符串的定义
  • 字符串 就是 一串字符,是编程语言中表示文本的数据类型

  • 在 Pyhton 中可以使用 一对双引号 ” 或者 一对单引号 ’ 定义一个字符串

  • 可以使用 索引 获取一个字符串中指定位置的字符 ,索引计数从0开始

  • 也可以使用 for 循环遍历 字符串中每一个字符

    | 大多数编程语言都是用 ” 来定义字符串

1.2字符串的常见操作
分类关键字说明
查找字符串**.find**(目标字符串,开始索引,结束索引)在指定范围内,查询目标字符串的索引,不存在返回-1
替换字符串**.replace**(原内容,新内容,替换次数)返回一个替换了原内容的新字符串,可以指定替换次数
分割字符串**.split**(分隔符)以分隔符拆分字符车,返回列表
拼接字符串 + 字符串拼接两个字符串
字符串**.join**(字符串列表)以字符串来连接字符串列表中每个袁术,合并为一个新的字符串

2.列表

2.1列表的定义
  • list (列表)是 Python 中使用 最频繁 的数据类型
  • 专门用于存储 一串 数据, 存储的数据称为 元素
  • 列表用 [ ] 定义 ,元素 之间使用 , 分隔
  • 列表的索引 从0 开始
    • 索引就是元素在 列表 中的位置编号

注意: 从列表中取值时,如果 超出索引范围 ,程序会报错

2.2列表嵌套
  • 一个列表中的元素又是列表,那么这个就是列表的嵌套
2.3列表常见操作
分类关键字/函数/方法说明
增加列表.append(值)在末尾追加数据
删除列表.remove(值)删除第一个出现的指定数据
修改列表 [索引] = 值修改指定索引的数据,数据不存在会报错
查询列表 [索引]根据索引取值,索引不存在会报错
len (列表)列表长度(元素个数)
if 值 in 列表:判断列表中是否包含某个值
排序列表.sort()升序排序
2.4循环遍历
  • 遍历 就是从头到尾 一次从列表中取出每一个元素

  • Python中专门提供 for循环 实现遍历

    # for 实现列表的遍历
    for name in name_list:
        
        循环内部针对列表元素进行操作
        print(name)
    
2.5应用场景
  • 尽管 Python 的 列表 中可以存储不同的数据
  • 但在开发中,更多的应用场景时
    1. 列表 存储相同类型的数据
    2. 通过 for循环 ,在循环体内部,针对列表中的每一项元素,执行相同的操作

3.字典

3.1字典的定义
  • 字典通用可以用来 存储多个数据

    • 通常用于存储 描述一个 物体的相关信息
  • 字典用 { } 定义

  • 字典使用 键值对 存储数据,键值对之间使用 , 分隔

    • key 是索引
    • value 是数据
    • 和 值 之间使用 : 分隔
    • 可以取任何数据类型,但 自能使用字符串数字元组
    • 键必须是唯一的

    字典没有索引,是 无序

# 定义字典
字典名 = {
    "键A":"值A",
    "键B":"值B",
    "键C":"值C",
    ...
}

# 取出元素的值
pring(字典名["键名"]) # 输出对应值名
3.2字典常用操作
分类关键字/函数/方法说明
增加字典值 [键] = 值键不存在,会添加键值对
删除字典.pop(键)删除指定键值对,返回被删除的值,如果键不存在,会报错
修改字典 [键] = 值键存在,会修改键值对的值
查询字典 [键]根据键取值,键值对不存在会报错
字典.get (键)根据键取值,键值对不存在会返回None,不会报错
3.3应用场景
  • 在开发中,字典的应用场景是:

    • 使用 多个键值对 ,存储 描述一个 物体的 相关信息 ——描述的数据信息

    • 多个字典 放在 一个列表 中,在进行遍历,在循环体内部针对每一个字典进行 相同的处理


4.函数

1.基本概念
  • 所谓 函数,就是把 具有独立功能的代码块 组织成一个整体,在需要的时候 调用
  • 函数的使用包含两个步骤:
    1. 定义函数——在函数中编写代码,实现功能
    2. 调用函数——执行编写的代码
  • 函数的作用 ,在开发程序时,使用函数可以提高编写的效率以及代码的 重用性
2.函数的定义

定义函数的格式如下:

def 函数名():
    
    函数封装的代码
    ...
    
  1. def 是英文 define 的缩写
  2. 函数名称 应该能够简单明确的表达 函数功能 ,以方便后续的调用
  3. 函数名称 的命名应该 符合 标识符的命名
    • 可以由 字母下划线、和数字组成
    • 不能以数字开头
    • 不能与关键字重名
3.函数的调用

调用函数很简单的,通过 函数名 ( ) 即可完成对函数的调用

4.第一个函数

需求

  • 编写一个打招呼 say_hello 的函数,封装三行打招呼的代码
  • 在函数下方调用打招呼的代码
name = "小明"

# 解释器指定这里定义了一个函数
def say_hello():
    print("Hello")
    print("World")
    print("Python")

print(name)
# 只有在调用函数时,之前定义的函数才会被执行
# 函数执行完成之后,会重新回到之前的程序中,继续执行后续的代码
say_hello()

print(name)
5.函数的参数
演练需求
  1. 开发一个 func_cum 的函数
  2. 函数能够实现 两个数字的求和 功能

演练代码如下:

def func_sum():
    
    num1 = 10
    num2 = 20
    result = num1 + num2
    
    print("{} + {} = {}".format(num1, num2, result))
    
func_sum

思考一下存在什么问题

| 函数自能处理 固定数值 的相加

如何解决?

  • 如果能吧需要计算的数字,在调用函数时,传递到函数内部就好了
5.1参数的概念
  • 函数的参数,可以传递数据给函数内部,增加函数的 通用性
    1. 在函数 内部 ,把参数当作 变量 使用,进行需要的数据处理
    2. 函数调用时,按照函数定义的 参数顺序,把 希望在函数内部处理的数据通过参数传递
5.2设置函数的参数
  • 在函数名的后面的小括号内部填写 参数
  • 多个参数之间使用 , 分隔
def func_sum(num1, num2):
    
    result  num1 + num2
    
    print("{} + {} = {}" % (num1, num2, result))

func_sum(intA, intB)
6.函数的返回值
6.1概念
  • 开发中,有时会希望 一个函数执行结束后,告诉调用者一个结果告诉调用者一个结果,以便调用者针对具体的结果做后续的处理
  • 返回值函数给调用方提供的结果
6.2设置返回值
  • 在函数中使用 return 关键字可以返回结果
  • 调用函数一方,可以 使用变量接受 函数的返回结果
def func_sum(num1, num2):
    """对两个数字的求和"""
    
    return nu1 + num2

# 调用函数,并使用 result 变量接收计算结果
result = func_sum(intA, intB)

print("计算结果是%d" % result)

|不设置返回值,会返回None,表示没有任何数据

6.3return
  • 一旦执行 return,函数中后续代码不会执行
def func():
    a = 1
    return a
	
	print("Hello")  # 这行代码不会被执行

func()

5.模块的使用

1.什么是模块

模块就是一个 .py 的文件

模块就好比是工具包,要想使用这个工具包中的工具(就好比函数),就需要导入这个模块

2.为什么要使用模块

模块可以帮我们完成如下几件事:

  1. 多人协同开发
  2. 使用大牛留下的工具包
  3. 使代码结构更加灵活,降低耦合性,方便管理
3.如何使用模块
1.import

Python 中使用关键字 import 来引入某个模块,比如要引入模块 random, 就可以在文件最开始的地方用 import random 来引入

形如:

	import module1,module2...

当解释器遇到 import 语句,如果模块在当前的搜索路径就会被导入

在调用 math 模块中的函数时,必须这样引用

	模块名.函数名
  • 想一想:

    |为什么必须加上模块名调用呢?

  • 答:

    |因为可能存在这样一种情况:在多个模块中含有相同名称的函数,此时如果姿势通过函数名来调用,解释器无法知道到底要调用哪个函数。所以如果像上述这样引入模块的时候,调用函数必须加上模块名

    import random
    
    # 这样会报错
    print(randint(1, 3))
    
    # 这样才能正确输出结果
    print(random.randint(1, 3))
    
2.from…import

有时候我们只需要用到模块中的某个函数/变量,只需要引入该函数即可,此时可以用下面方法实现:

from 模块名 import 函数名1,函数名2...
示例:
from random import randint

# 使用from...import * 可以导入当前模块的索引函数/变量,导入的函数可以之间使用,无需指定模块名
print(randint(1, 3))
print(randrange(1, 6))
注意:
  • 这提供一个简单的方法来导入一个模块中的所有项目。然而这种声明不该被过多使用
4.as 关键字的使用
  • 给模块定义别名

    import random as ra
    
    # 使用as关键字,可以给函数/变量或者模块起一个别名,在调用时更为简便
    print(ra.randint(1, 3))
    
  • 给函数、变量定义别名

    from random import randint as ra
    
    # 使用as关键字,可以给函数/变量或者模块起一个别名,在调用时更为简便
    print(ra(1, 3))
    
注意
  1. 如果使用as关键字进行修饰,那修饰前的变量名或函数名将无法使用
  2. 使用as关键字时要注意,修饰后的名称与其他变量或模块名不能冲突,否则会造成程序错误
  3. 使用场景因人而异,一般时防止导报冲突或者简化代码使用
5.模块使用示例
from pyecharts.charts import Bar

data_dict = {'苹果':12, '香蕉':16, '葡萄':23, '水蜜桃':13, '火龙果':21}
bar = (
	Bar()
    	.add_xaxis(list(data_dict.keys()))	# 横坐标
    	.add_yaxis("销售额(万元)", list(data_dict.values))	# 纵坐标
    	.set_global_opts()
)
bar.render()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值