Python基础 知识点总结
一、pyhon简介
1. 程序
程序是指挥cpu工作的“工作手册”。计算机只能执行二进制代码,程序设计语言一般类似英文,想要让计算机理解你写的程序,必须把程序代码“翻译”成计算机能理解的二进制代码,根据形式的不同,可以分为编译型语言和解释性语言
2.Pthon简介
Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆 于1990 年代初设计,作为一门叫做ABC语言的替代品。 [1] Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言, [2] 随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发
3.python的特点:
二、Python入门 [PyCharm]
1、新建工程
(1)、编写python代码
(2)、点击绿色箭头运行代码
(3)、控制台查看结果
接下来我们充满了疑惑,我们一一解答
三、Python基本语法
1、python文件格式以及语法规则
2、python变量和常量
变量的定义
语法:变量名 = 字面量
# 变量的使用
name = 'guan'
age = '18'
print("姓名:", name)
print("年龄:", age)
运行结果:
变量名命名规范
变量名也可称之为标识符(变量名、函数名、类名、包名等统称为标识符)
其命名要符合python的语法要求:
变量命名风格
变量和内存和in()、type()函数
parm = '12'
# id(num)函数的使用
print('变量内存中的地址:',id(parm))
# type(parm)函数的使用
print('这个变量的数据类型:', type(parm))
常量
python没有专门的常量类型,一般约定俗成使用大写表示常量
# 定义常量
PI = 3.14
print(PI)
3、Python关键字
4、Python保留字
5、Python的输入函数input() 和输出函数print()
input()函数语法规则:result = input('输入内容')
使用
# input函数的使用
name = input('请输入您的姓名:')
print('你的名称为:',name)
print()函数语法规则:print(object,end = '')
# emd ='结尾的内容'
print('Hello World', end='')
print('This is content',end='。。。。')
# print打印多个信息
print('This is one','two','three')
6、Python的注释
# 这是python的单行注释
'''
这是python的多行注释
'''
"""
这是python的多行注释
"""
7.python的数据类型
不同类型的变量可以进行的运算是不同的,所以必须理解变量的类型,python中数据类型可以分为内置类型和自定义类型
内置类型:
- 数值类型:number
- 字符串类型:string
- 布尔类型:boolean
- 空类型: None
- 列表类型:list
- 元组类型:tuple
- 字典类型:dict
自定义类型:class
(1)数值类型
数值类型分为两种,整形(int)、浮点型(float)
整形
'''
整形的使用
'''
# 第一种:使用内置函数int()
num = int(666)
# 第二种:直接赋值
num2 = 999
# 输出类型和值
print('num的值为:', num)
print('num的数据类型为:', type(num))
print("-------------------------------")
print('num的值为:', num2)
print('num的数据类型为:', type(num2))
浮点型
'''
浮点数的使用
'''
# 1、使用内置函数float()定义浮点数
f1 = float(3.14)
# 2、直接赋值
f2 = float(4.13)
# 输出变量的类型和值
print('f1变量的值:', f1)
print('f1变量的数据类型:', type(f1))
print('---------------------')
print('f2变量的值:', f2)
print('f2变量的数据类型:', type(f2))
(2) 字符串类型
'''
字符串的使用
'''
# 1、使用str()函数定义字符串
str1 = str('我是字符串1')
# 2、使用直接赋值的方式定义字符串
str2 = '我是字符串1'
# 输出字符串变量和数据类型
print("str1的值:", str1)
print("str1的数据类型:", str1)
print('-------------')
print("str2的值:", str2)
print("str2的数据类型:", str2)
# 字符串是不可变的,当我们重新赋值的时候, 内存会开辟新的空间存储
print('没有修改前的内存地址:', id(str1)) # 1892296755776
str1 = 'new Data'
print('修改后的内存地址:', id(str1)) # 1892296622384 我们发现内存地址发生了改变
字符串内置函数len()函数的使用
# len() 函数的使用
str1 = "我是字符串"
print('字符串的长度:', len(str1))
字符串内置函数in和not in的使用
# in函数的使用
str = 'Hello World'
str1 = 'Hello'
# 测试in函数
print('str1 in str:', str1 in str)
print('str1 not in str:', str1 not in str)
内置函数max()和min()在字符串中的使用
# max和min内置函数在字符串中的使用
str = "Hello World!"
print("max:", max(str))
print("min:", min(str))
字符串的拼接
当我们想要两个字符串连接起来的时候,可以使用字符串拼接符号:+
# 字符串的拼接
str1 = "Hello "
str2 = " World!"
print('字符串拼接的结果:', str1 + str2)
(3) 布尔类型
# 布尔类型的使用
# 使用bool()内置函数定义布尔类型
b1 = bool(True)
# 使用直接赋值定义布尔类型
b2 = False
# 输出
print('b1的值:', b1)
print('b1的数据类型:', type(b1))
print('-------------------------')
print('b2的值:', b2)
print('b2的数据类型:', type(b2))
print('-------------------------')
# 0 和非0
b3 = bool(0)
b4 = bool(1)
print(b3) # False
print(b4) # True
(4)空类型
# 空类型的使用
n = None
print('变量n的值:', n)
print('变量n的值:', bool(n))
(5)列表类型
# list列表的基本使用
# 使用内置函数list()
list1 = list([1,2,3,4,5])
# 使用[]赋值
list2 = ['str1', 'str2', 'str3']
list3 = ['data', 2, False, None]
# 输出
print('list1列表的值:', list1)
print('list1列表的数据类型:', type(list1))
print('----------------------')
print('list2列表的值:', list2)
print('list2列表的数据类型:', type(list2))
print('----------------------')
print('list3列表的值:', list3)
print('list3列表的数据类型:', list3)
in、max、min内置函数在list列表的使用
"""
in()内置函数在list的使用
元素 in list ,判断list列表中是否包含元素,包含返回true,不包含返回false
"""
mList = [1, 2, 3, 4, 5]
print(1 in mList) # True
print('13' in mList) # False
"""
max内置函数在list的使用
max(list),返回列表最大的元素
"""
print(max(mList)) # 5
"""
min内置函数在list的使用
min(list),返回列表最小的元素
"""
print(min(mList)) # 1
(6)元组类型
"""
tuple元组的使用
"""
# 1、使用内置函数tuple()定义元组
mTuple = tuple((1, 2, 3, 4, 5, 6, 7))
# 2、使用直接赋值的方式定义元组
mTuple2 = ("one", "two", "three", "four", "five")
print('mTuple的值:', mTuple)
print('mTuple的数据类型:', type(mTuple)) # <class 'tuple'>
print('-----------------')
print('mTuple2的值:', mTuple2)
print('mTuple2的数据类型:', type(mTuple2))
print('-----------------')
# 元组是不可变的 我们尝试修改它 的值,看它的内存地址
print('没修改前id地址:', id(mTuple))
mTuple = ("one","two","three")
print('修改后id地址:', id(mTuple))
in、max、min内置函数在list列表的使用和list差不多,但是需要注意的是,元组中的元素不能是多种类型,如果类型不同意,则会报错
(7)字典类型
"""
dict字典的使用
"""
# 1、使用内置函数dict()实例化dict变量
mDict = dict({"name": "guan", "age": 13})
# 2、直接赋值方式实例化字典数据类型
mDict2 = {"privince": "广东", "city": '梅州'}
print("mDict的值:", mDict)
print("mDict的数据类型:", type(mDict))
print("---------------------------")
print("mDict2的值:", mDict2)
print("mDict2的数据类型:", type(mDict2))
8.Python的运算符和表达式
在以前数据中,70+80的运算我们在计算机中称为表达式,其中的+号称为运算符
(1)算数运算符
a=10;
b=20
运算符 | 描述 | 实例 |
---|---|---|
+ [加] | 两个对象相加 | a+b ;结果30 |
– [减] | 一个数减去另一个数或得到负数 | -b,结果-20 |
* [乘] | 一个数乘另一个数 | a*b;200 |
/ [除] | 一个数除一个数 | b/a;2 |
% [取余] | 返回除法的余数 | b%a;0 |
** [取幂] | x的y次幂 | 2**2,2的2次方,4 |
// [取整除] | 返回商的整数部分 |
9//2 ;4 9.0//2.0 4.0 |
(2)比较运算符
a=10;
b=20
运算符 | 描述 | 实例 |
== | 比较对象是否相等 | a == b;返回False |
!= | 比较两个对象是否不相等 | a!=b;返回True |
> | 返回a是否大于b | a >b;返回False |
< | 返回a是否小于b | a<b;返回True |
>= | 返回a是否大于等于b | a>=b;返回False |
<= | 返回a是否小于等于b | a<=b;返回True |
(3) 赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符 | c=a+b;c 为30 |
+= | 加法赋值运算符 | a+=b;相当于 a=a+b |
-= | 减法赋值运算符 | a-=b;相当于a=a-b; |
*= | 乘法赋值运算符 | a*=b;相当于a=a*b; |
/= | 除法赋值运算符 | a/=b;相当于a=a/b; |
%= | 取模赋值运算符 | a%=b;相当于a=a%b; |
**= //= |
幂赋值运算符 取整除赋值运算符 |
a**=b;相当于a=a**b; a//=b;相当于a=a//b; |
(4) 位运算符
运算符 | 描述 | 实例 |
---|---|---|
& |
按位与运算符:参与运算的两个值,如 果两个相应位为 1,则表示该位结果为 1,反之为 0 |
60 0011 1100 13 0000 1101 0000 1100 —–》12 |
| |
按位或运算符:参与运算的两个值,如 果其中有一个为 1,则表示该结果为 1 |
60 0011 1100 13 0000 1101 0011 1101 ——-》61 |
^ |
按位异或运算符:当两对应的二进位相 异时,结果为 1 |
60 0011 1100 13 0000 1101 0011 0001 ——-》49 |
~ |
按位取反运算符:对数据的每一个二进 制位取反,即 1 变 0 ,0 变 1;如果最 高位为 0,则为正数;如果最高位为 1, 则为负数 |
60 0011 1100 —-》1100 0011 a = 60 print( ~a ) ——->-61 |
<< |
左移运算符:运算数的各个二进制位全 部左移若干位,由<<右边的数字指定位 移的位数,最高位丢弃,低位补 0 |
a = 60 二进制:0011 1100 a << 2 1111 0000 —-》240 |
>> |
右移运算符:把>>左边的运算数的各个 二进制位全部右移若干位,>>右边的数 字指定了移动的位数 |
a = 60 二进制:0011 1100 a >> 2 0000 1111 —-》15 |
(5)成员运算符
运算符 |
描述 | 实例 |
---|---|---|
in |
如果在指定的序列中找到值返回 True, 否则返回 False。 |
x 在 y 序列中 如果 x 在 y 序列中返回 True。 |
not in |
如果在指定的序列中没有找到值返回 True,否则返回 False。 |
x 不在 y 序列中 如果 x 不在 y 序列中返回 True。 |
(6)身份运算符
运算符 | 描述 |
---|---|
is |
is 是判断两个标识符是不是引用自一个对象 |
is not |
is not 是判断两个标识符是不是引用自不同对象 |
(7)逻辑运算符
运算符 | 描述 | 实例 |
---|---|---|
and |
布尔"与" 如果x and y 如果x为False 结果为 false,否则返回 y 的计算值 |
a and b 返回 20 |
or |
布尔"或" 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值 |
a or b 返回 10 |
not |
布尔"非" 如果 x 为 True,返回 False; 如果 x 为 False,它返回 True |
not(a and b) 返回 False |
(8)运算符优先级
运算符 | 描述 |
---|---|
** |
指数 (最高优先级) |
* / % // |
乘,除,取模和取整除 |
+ – |
加法减法 |
>> << |
右移,左移运算符 |
& ^ | |
位运算符 |
<= >= |
比较运算符 |
== != |
等于,不等于 |
= %= /= //= -= += *= **= |
赋值运算符 |
is is not |
身份运算符 |
in not in not and or |
成员运算符 逻辑运算符 |
来源:Bboy_guan