Python课程笔记

Python学习笔记

1. 初探Python

安装环境搭建

Python安装

64: https://dl.softmgr.qq.com/original/Development/python-3.8.5-amd64.exe
32: https://dl.softmgr.qq.com/original/Development/python-3.8.5.exe

VSCode安装

64: https://dl.softmgr.qq.com/original/Development/VSCodeUserSetup-x64-1.62.3.exe
32: https://cr6.9pj8m.com/vscodeusersetup-1.59.0.exe

具体安装看教程

Python程序的运行

使用终端运行

终端: DOS时代遗留的产物

打开cmd,然后输入python + 要执行的文件即可

Python课程笔记

使用编辑器自带的运行

右键即可执行

Python课程笔记

Python的两种交互模式

在终端输入python后进入交互模式

Python课程笔记

在代码编辑器中编写完程序后执行

注释

可以对代码进行注解 解释

单行注释

# 欢迎关注骨折的羊

多行注释

'''
欢迎关注骨折的羊
欢迎给我的视频三连
'''

一些有趣的注释

https://www.cnblogs.com/GuiltySpark/p/5329864.html

注意点

  1. 被注释的代码不会被执行
  2. 要养成写注释的好习惯

中文乱码

Python2版本不支持中文 但是Python3支持中文

三种写法:

#encoding=utf-8
#coding=utf-8
#_*_coding:utf-8_*_ Python推荐

解释这种现象出现的原因:
直接看视频

2. Python基础

变量

作用:在内存当中存储数据

变量名

作用:方便我们取用内存当中的数据

命名规则:

  1. 只能由字母,数字,下划线组成
  2. 不能以数字开头
  3. 不能是Python中已经使用了的名称
  4. 尽量做到见名知意

练习(判断对错):

Python课程笔记

关于中文变量名

可以是可以,但是一定不要这么做

进一步了解变量

定义变量的格式

变量名 = 值

变量必须要有定义,否则不能使用

变量定义之后的值可以修改

多个变量的赋值

变量名1,变量名2 = 值1,值2

变量名1=变量名2=值

使用变量的好处

  1. 一处修改,处处修改
  2. 对于用户的输入可以更方便的存储
  3. 节省文件空间

查看变量地址

id(变量)

交换两个变量的值

  1. 使用第三方变量的算法思想:
temp = a
a = b
b = temp
  1. 使用Python的元组拆包
a,b = b,a
  1. 对于支持加减法运算的(整数,小数)
a = a+b
b = a-b
a = a-b

数据类型

什么是数据类型

程序处理的数据 按照类型来区分

为什么要区分类型

  1. 区分不同类型的存储空间
  2. 不同的数据类型 处理数据的方式不同,例如:1+1和"1"+"1"

常用数据类型有哪些

  • Numbers
    • int
      • 二进制
      • 八进制
      • 十进制
      • 十六进制
    • long(python2)
    • float
  • Bool
    • True
    • False
  • String
    • 'fuck'
    • "fuck"
    • '''fuck'''
    • """fuck"""
  • List
  • Set
  • Tuple
  • Dictory
  • NoneType

查看数据类型

type(变量/值)

数据类型转换

类型(变量名)可以将对应的变量转换为相应的数据类型

下面是一段报错代码:int 和 str之间不能进行加减乘除运算

num = 1
print(num+"1")

动态类型语言和静态类型语言

静态类型语言指的是变量的类型在编译的时候就已经确定了 无法在后期进行修改 如 C C++等
动态类型语言指的是变量的类型在运行的时候可以后期修改 如Python

所以 Python是动态类型的

强类型语言和弱类型语言

强类型语言值的是类型不轻易在运算中改变
弱类型语言值的是类型在运算中很容易被转换

所以 Python是强类型的,动态类型的语言

一个非常重要的结论:Python当中的变量更像是一个名字,和C/C++有着本质的不同

Python运算符

学习下面的内容之前 需要明确 操作数和运算符可以结合成为一个运算表达式

算术运算符

# a = 10
# b = 2
# from decimal import *
# +:数值的相加 字符串的拼接 等等
# print(a+b)
# print("1"+"1") "1"*2
# -:数值的相减
# print(b-a)
# *:数值的相乘 字符串的乘法运算
# print(3*4)
# print(a*b)
# print("对不起"*1000)
# **:幂运算   2**3
# print(a**b)
# /:数值的除法
# print(5/2)
# //:数值之间地板除法 直接割掉小数 不是四舍五入
# print(6//10)
# %:数值之间取余数
# print(a//b)
# print(a%b)
# if(a%2==0):
#     print("a是偶数")
# else:
#     print("a是奇数")
# =:给变量赋值
# a = 9
# b = 10
# print(a,b)
# print(Decimal("0.15")+Decimal("0.25"))

要注意优先级问题 可以使用括号来提升运算的优先级

复合运算符

其实就是把算术运算符给复合起来 例如 a = a+1 可以复合成为 a+=1

a = 10
b = 20
# +=:数值的相加 字符串的拼接 等等
# a = 10 + 1
# print(a)
# # a = a + 1
# a += 2 # a = a+2
# a += b
# a += a # a= a+a
# a += a+b # a = a+a+b
# a += a-b # a = a+a-b
# print(a)
# -=:数值的相减
# a = a-10
# a -= 10
# print(a)
# *=:数值的相乘 字符串的乘法运算
# a *= 10
a *= a-b # a = a*(a-b)
# **=:幂运算   2**3
# a **= 3 # a = a ** 3
# print(a)
# /=:数值的除法
# a /= 20
# //=:数值之间地板除法 直接割掉小数 不是四舍五入
# a //= 20
# %=:数值之间取余数
# a %= 3
print(a)

比较运算符

比较运算符的结果有两个 一个是 True 一个是False

True 和 False都要大写

逻辑运算符

not 逻辑非

取反 真变假 假变真

a = True
print(not a)
a = False
print(not a)
and 逻辑与

两边都是真 结果才为真

a = True
b = False
print(a and b)
or 逻辑或
a = True
b = False
print(a or b)

注意点:

  • 如果不是布尔类型的数据判断真假 记住 非零为真 非空为真

    print(1 or False)
    print(bool(1))
    print(bool(0))
    print(bool(""))
    print(bool(None))
    
  • 逻辑表达式的运算结果不一定是True False 也可以是其他的 反正只要这个结果不是0 不是空 那么就是真

深入本质:逻辑短路

如果不能确定一整条表达式的值(比如and需要看完两边才能确定) 需要一直往后看 直到能够确定出来真还是假 后面的是什么鸟样就不用管了 而且 当前看到哪里 返回哪里的数据

print(True or False)
print(True or 0)
print(True or "")
print(True or None)
print(False or True)
print(False or 1)
print(False or -1)
print(0 or 111)
print(None or 999)
print(999 or 999)
上一篇:【每日算法】力扣217. 存在重复元素


下一篇:centos修改账户ftp上传权限