1.认识Python:
Python是人与计算机交流的语言,编程语言的一种,是面向对象语言
程序设计原则:KISS原则 -- 简洁胜于复杂
2.Python的优势:
语法简洁明了,实现代码短,模块众多
3.Python的应用领域:
web应用开发
人工智能
网络爬虫
游戏开发(2D游戏)
可视化,自动化脚本
4.Python的执行方式:
1.交互式执行方式(及时给出响应,代码不能保存):
不需要创建脚本文件,直接通过Python解释器的交互模式来编写代码
2.文件式执行方式(代码可以永久保存,但不能及时给出回应):
新建一个.py文件,代码在文件中执行
5.文档:
在浏览文档时,如果发现参数旁边有方括号 []
,说明这是一个可选参数,相当于是这个函数或者方法的高级应用,如果给它赋值的话,它会有新的特性出现
6.变量:
- 变量就是在存储数据时,当前数据所在的内存地址的名字 ,变量的作用即标识数据
- 在程序中,数据都是临时存储 在内存当中,为了更快速的查找或使用这个数据,通常给它定义一个名称,这个名称就是变量名
-
变量的赋值语法:变量名 = 值
单变量赋值
pythonname = "姓名"
多变量赋值
pythonname,age,hobby = "姓名",100,"AI" name = "姓名" age = 100 hobby = "AI"
pythona = b = c = 1
-
变量的命名规范:
- 由数字,字母,下划线组成
- 不能以数字开头
- 不能是纯数字
- 不能使用Python内置关键字
- 不能用特殊字符
- 注意使用时区分大小写
-
查看Python关键字的代码:
python
import keyword
print(keyword.kwlist)
Python中的关键字
python
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
4.变量里有:变量名,变量的值,内存地址
注意: 如果某个变量要作为临时变量或者无关紧要的变量使用,可以直接用下划线 _ 当作变量名
7.id()函数:
- 用于查看变量或对象的内存地址
- 在程序运行时,系统会自动把程序中的变量,数据临时存储到内存当中,内存会自动的分配空间,而变量名就是指向那块空间的名字,每一次运行,系统分配的空间位置不同,内存地址不同
python
a = 9
print(id(a))
8.注释:
单行注释采用 # 开头
PyCharm
注释快捷键:CTRL + /
PyCharm
快速格式化代码:CTRL + ALT + L
9.基本数据类型:
-
数值类型:
int()
-- 整型;float()
-- 浮点型pythona,b = 13,-12
pythonc,d = 3.46,-67.4
-
布尔类型:
True
-- 真;False
-- 假 -
str()
-- 字符串a = 'a' b = "b" c = '''c'''
-
list()
-- 列表pythona = 67 b = ["a",17,"68",-76,4.31,'b',a]
-
tuple()
-- 元组pythona = 67 b = ("a",17,"68",-76,4.31,'b',a)
-
set()
-- 集合pythona = 67 b = {"a",17,"68",-76,4.31,'b',a}
-
dict()
-- 字典 键值对:键:值 -- 左面为键,右面为值,键可以看作是值的名字
pythona = 185 b = {"name":"姓名","age":29,"hobby":"AI","height":a}
注意:
-
整型中并不包含小数
-
若
''
所包裹的内容之中同样有''
那么应使用" "
或''' '''
包裹,反之亦然 -
字符串,列表;元组;集合;字典统称为序列,它们都是容器,字符串属于半个容器
-
列表;元组;集合中的元素分布内容一致,但字典中的元素为键值对,一个键值对为一个数据,不是两个
-
Python是弱类型语言,可以自动的去识别数据类型,不需要特意定义
-
10.类型转换:
类型转换是一种强制型的转换,要在进行转换的内容的前面加上类型标识
类型标识(函数) | 说明 |
---|---|
int(x) |
将x 转换为整数 |
float(x) |
将x 转换为浮点数 |
str(x) |
将x 转换为字符串 |
eval(str) |
将字符串中的数据转换成Python表达式的原本类型 |
tuple(s) |
将序列s 转换为一个元组 |
list(s) |
将序列s 转换为一个列表 |
注意:
-
像整数的字符串可以转换为整数,也可以转换为浮点数
-
像小数的字符串可以转换为浮点数,但不可以直接转换为整数
-
任何类型都不可以转换为字典
-
布尔类型可以转换为整型 --
True
为1,Flase
为0,浮点型和字符串,但不能转换为序列 -
字典转换后只会保留键
-
类型转换要符合实际!!!
python
a = "123"
b = int(a)
print(b)
python
a = 15
print(float(str(a)))
python
print(int(True))
print(float(True))
print(str(True))
python
a = {"zh":185,"姓名":183}
print(list(a))
11.type()
函数:
查看数据类型
python
a = 23.54
b = int(a)
print(b,type(b))
python
a = 34.89
print(int(a),type(a))
12.输入:
把数据给到程序中的过程叫做输入
输入函数:input()
python
input("请输入你的姓名:")
python
name = input("请输入你的姓名:")
注意:
-
input()
函数括号里的信息仅用作提示,需要输入的信息是写在控制台上的 -
在Python中,
input()
会自动把用户输入的数据当作字符串处理
python
print(int(float(input())))
13.占位符(格式化字符):
格式化符号 | 转换 |
---|---|
%s |
字符串 |
%d |
整数 |
%f |
浮点数,默认为小数点后六位,%.几f -- 用于保留小数点后几位(会自动四舍五入) |
%u |
无符号十进制整数 |
%o |
八进制整数 |
%x |
十六进制整数 |
%e |
小数点后面六位有效数字,以指数形式输出实数 |
%g |
根据大小自动选%f 或%e 格式,且不输出无意义的零 |
14.转义字符:
转义符号 | 作用 |
---|---|
\n |
换行符 |
\t |
制表符(四个空格) |
\r |
顶格,将光标位置移动到本行开头 |
\b |
退格,将光标位置向前移动一位 |
\ |
续写符 |
\' |
单引号转义 |
\" |
双引号转义 |
注意: 在字符串前面加上 r
表示取消转义
python
print(r"wenjain1\f\bf\ad")
15.输出:
把数据从程序中取出的过程叫做输出
输出函数:print()
作用:
用于打印,输出,将括号里面的内容输出到控制台上,是Python中最常见的函数
print()
不仅可以输出一个对象,也可以输出多个对象,中间用 , 隔开
python
a = 10
print(a)
python
age = 19
print("你的年龄:",age)
print()
的语法格式:
python
print(变量名/值,sep = ' ',end = '\n',file = sys.stdout)
sep
: 用来间隔多个对象,用作多个变量间的隔断,默认值是一个空格end
: 用来设定以什么结尾,影响下一次输出的位置,默认值是换行符\n
file
: 要写入的文件对象
python
name,height,age,hobby = "姓名", "1.85m", 19, "人工智能"
print(name,height,age,hobby,sep=" | ",end="\t")
print()
的输出格式:
1. 普通输出:用逗号去隔开想输出的内容:
python
name = "qiao_yue"
print("你的名字:",name," 才怪")
2. 使用%占位符输出:
python
name = "qiao_yue"
print("你的名字:%s 才怪"%name)
python
age = 19
print("你的年龄:%d ~~~"%age)
python
height = 110.5
print("你的体重是:%f ~~~"%height) #110.500000
print("你的体重是:%.1f ~~~"%height) #110.5
多个%占位符输出
python
name = "姓名"
age = 29
height = 110.5
print("你的姓名:%s 你的年龄:%d 你的体重:%f" %(name,age,height))
注意:
-
%s
可以用于任何类型,是通用占位符 -
%d
用于填充int
类型,填充小数时会进行强制类型转换,只保留整数,有损精度 -
%f
用于填充浮点类型,填充整数时会进行强制类型转换,结尾用0填充 -
只有一个%占位符占位时,就用一个变量去填充,多写少写都会报错
-
%占位符受类型的限制,但变量,对象都可以进行填充
3. "{}".format()输出:
python
name = "姓名"
age = 19
print("你的年龄:{} ~~~".format(age))
多个"{}".format()输出
python
name = "姓名"
age = 19
height = 110.5
print("你的姓名:{} 你的年龄:{} 你的体重:{}".format(name,age,height))
遇到要保留小数时 -- "{:.几f}".format()
python
name = "姓名"
age = 19
height = 110.5867
print("你的姓名:{} 你的年龄:{} 你的体重:{:.2f}".format(name,age,height))
注意:
-
只有一个{}占位时,就用一个变量去填充,后面多写变量也不会有显示,但少写会报错
-
format()
没有类型的限制,变量,对象都可以进行填充
4. f"{}"
输出:
python
age = 19
print(f"你的年龄:{age} ~~~")
多个f"{}"
输出
python
name = "姓名"
age = 19
height = 110.5
print(f"你的姓名:{name} 你的年龄:{age} 你的体重:{height}")
遇到要保留小数时 -- f"{变量/对象:.几f}"
python
name = "qiao_yue"
age = 19
height = 110.5867
print(f"你的姓名:{name} 你的年龄:{age} 你的体重:{height:.2f}")
注意: f"{}"
没有类型的限制,变量,对象都可以进行填充
16.运算符:
算数运算符
符号 | 描述 |
---|---|
+ |
加 |
- |
减 |
* |
乘 |
/ |
除 |
// |
整除(自动四舍五入) |
% |
取余(没有四舍五入) |
** |
乘方(幂运算) |
() |
优先级 |
注意:
-
先乘方,后乘除,最后加减,有括号的先算括号里的,同级从左往右算
-
余数没有负数,除不尽的都余1,且取余时不能将任何数字除以0,不然会报错
赋值运算符
符号 | 描述 |
---|---|
= |
赋值 |
复合赋值运算符
符号 | 描述 |
---|---|
+= |
加法赋值运算符 |
-= |
减法赋值运算符 |
*= |
乘法赋值运算符 |
/= |
除法赋值运算符 |
//= |
整除赋值运算符 |
%= |
取余赋值运算符 |
**= |
乘方赋值运算符 |
注意: 先运算,后赋值
python
a /= 1
a = a / 1
a **= 5
a = a ** 5
比较运算符
符号 | 描述 |
---|---|
== |
相等,若左右两边结果相等,则条件为真(True),反之,结果为假(False) |
!= |
不等于,若左右两边结果不相等,则条件为真(True),反之,结果为假(False) |
> |
大于,若左边结果大于右边,则条件为真(True),反之,结果为假(False) |
>= |
大于等于,若左边结果大于或等于右边,则条件为真(True),反之,结果为假(False) |
< |
小于,若左边结果小于右边,则条件为真(True),反之,结果为假(False) |
<= |
小于等于,若左边结果小于或等于右边,则条件为真(True),反之,结果为假(False) |
逻辑运算符
符号 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
and |
a and b |
若有一边为假,都为假,两边为真,才为真 | True and False,返回False |
or |
a or b |
若有一边为真,都为真,两边为假,才为假 | False or True,返回True |
not |
not a |
输出结果与原式相反 | not True,返回False |
python
print(45>67 and 78<90)
print(56<=78 or 78-13>67+28)
print(not 89<90)
print(90 and 68)
注意:
-
运算顺序:先算数运算,在比较运算,最后逻辑运算
-
逻辑运算符优先级顺序:
not
>and
>or
-
表达式(由数值和运算符组成)成立为真,不成立为假
-
若两边为数字,则看运算符返回:(0 -- False 和1 -- True 特殊对待)
e.g. and
返回第二个数字;or
返回第一个数字;not
返回False
,遇到0
返回True
True
和False
是运算的结果,不是符号