python的初步了解
python的介绍
pythond的创始人Guido van Rossum(吉多·范罗苏姆,俗称‘龟叔’ )
python的优点
- 简单易学
- 开发效率高
- 面向对象
- 免费,开源
- 可移植性
- 可扩展性
- 丰富的库
python的缺点
- 运行速度慢
- 中文资料缺乏
- 线程不能利用多核(由于GIL即全局解释器锁的原因)
python的应用场景
- web应用开发
- 科学计算,人工智能
- 服务器软件(网络软件)
- 操作系统管理,服务器运维的自动化脚本
- 游戏
编程语言分为编译型和解释型语言,python 属于解释型语言
编译型语言执行过程:使用 java 开发完一个只有 3 行代码的程序,然后将这三行代码统一交给编译器进行编译,编译成.class 文件,然后交给操作系统。当再次执行这个程序的时候,就可以直接拿刚才生成的.class 运行。就不需要再把源码翻成.class 文件。因为翻译只做了一次,运行的时不要翻译,所以编译型语言的程序执行效率高。
解释型语言执行过程:使用 python 开发了一个 3 行代码的源程序,当程序运行的时候一行一行的给解释器,解释器一行一行的进行解释。这样解释性语言每执行一次要翻译一次,效率表较低
python解析器的安装过程
python的注释
1.单行注释
#我是单行注释
2.多行注释
"""
我是多行注释
"""
python的数据类型
- int 整型 例如 30,43
- float 浮点型 例如 1.2,3,4
- bool 布尔类型 True 和 False
- complex复数
print(20) #整数
print(type(20)) #<class 'int'>
print(3.4)#浮点数类型
print(type(3.4))#<class 'float'>
print(False)#布尔数类型
print(type(False))#<class 'bool'>
python 划分数字类型的复杂度:bool<int<float<complex。
python的类型转换
#1将int强制转换成bool
print(bool(10)) #True
print(bool(0))#Fale
#2将bool转化成int
print(int(True))#1
print(int(False))#0
#3将float 转化成 int
print(int(3.15))#3去掉小数后的部分
#4将int 转化成 Float
print(float(3))#3.0
#5将bool 转化成 float
print(float(True))#1.0
#6将float 转化为 bool
print(bool(3.14))#True
python的进制转换
整数可以编写为十进制(以 10 为基数 )、十六进制(以 16 为基数)、八进制(以8 为基 )和 二进制(以 2 为基数)形式。
十六进制数以 Ox 或者 ox 开头,后面接十六进制的数字 1~9 和 A~F 。十六进制的数字编写成大写或小写都可以。(bin)
八进制数常以数 0o 0O 开头 (0 和小写或大写字母"O"),后面接着数字 0~7。(oct)
二进制以 0b 或者 0B 开头后面只有 0~1
(hex)
python的字符串
使用引号(双引号或者单引号)包裹的内容都是字符串。
print('哈哈')
print('123')
print("anb")
查看数据的类型(type)
print(type(12))#<class 'int'>
print(type(10.2))#<class 'float'>
print(type('好'))#<class 'str'>
print(type(True))#<class 'bool'>
变量
格式:变量 = 值
例如 x=12,定义一个 x 变量,x 变量的值是12。
读法: 将 12 赋值给 x 变量。
练习:定义一个名字变量,定义一个手机号变量,并输出到控制台中,并统计自己信息
name = '小明'
number = 123456
print(name,number)#小明 123456
变量的操作
- 改变引用:一个变量可以进行多次赋值,对应内存中改变的是引用的指向
- 共享引用:多个变量可以指向同一块内存,我们称之为共享引用
- 变量之间的计算:
a = 1
b = 2
print(a+b)#3
4.数字类型变量:
(1).在 python 中两个数字类型变量可以直接进行运行.
(2)如果是 bool 类型, 在计算的时候 True 对应 1, False 对应 0
b1 = True
b2 = False
b3 = b1 + b2
print(b3)#1
练习:文具店一支笔2元,买3支笔一共多钱?
#文具店
price = 2
pen = 3
money = price * pen
print(money)#6
标识符和关键字
(一)什么是标识符
标识符是对对象引用起的一个名字。如变量 、函数名、等等。
标示符是自己定义的,有效的标识符需要遵循一定的规则。
(二)标识符规则
1.由字母、下划线和数字组成,且数字不能开头
2.长度任意长;
3.标识符不能与关键字同名;
注意:python 中的标识符是区分大小写的 变量名 a 和 A 不相同
(三)python 中的关键字
import keyword
a=keyword.kwlist
print(a)
# ['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']
python命名规范
1.见名知意
起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可 读性)
比如: 名字 就定义为 name , 定义学生 用 student
2.下划线命名法
多个单词之间使用下划线隔开 例如 my_name=’zs’
3.类的命名使用大驼峰命名法 例如 Person
表达式和运算符
(一)表达式
算术运算符、逻辑运算符、赋值运算符、复合赋值运算符、关系运算符。
(二)算数运算符
#算数运算符
a = 10
b = 2
#加法运算
print(a+b)#12
#减法运算
print(a-b)#8
#乘法运算
print(a*b)#20
#除法运算
print(a/b)#5.0
#去整运算
print(a//b)#5
#去余运算
print(a%b)#0
#幂
print(a**b)#100
练习1:判断13是不是偶数
print(13%2)#1表示13不是偶数
print(12%2)#0表示12是偶数
(三)赋值运算符
a = 1
b = a
print(b)#1
(四)复合赋值运算符(自增运算)
c = 1
a =2
#+=
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
(五)逻辑运算符
and :x and y
x = False
y = True
b = x and y
print(b) # False
or : x or y
x = True
y = False
b = x or y
print(b) # True
not: not x
x = True
b = not x
print(b) # False
x = True
b1 = not x
print(b1) # False
优先级 not >and >or
print(1 and 2)#2
print(0 and 3)#0
print(not 1 and 2 or 3)#3
print(1 and 2 and 3 or 4 )#3
print(1 or 0)#1
print(True and False)#False
常用的类型转换函数
函数 | 说明 |
---|---|
int() | 转换为整数 |
float() | 转化为小数 |
str () | 转化为字符串 |
eval() | 自动转化 |
dict() | 转化为字典 |
tuple() | 转化为元组 |
list() | 转化为列表 |
set() | 转换为集合 |
chr() | 数字转化为字母 |
ord() | 字母转换为数字 |
ascll unicdoe utf-8 gbk区别
ascll | 使用字节只有字母和数字 |
---|---|
unicdoe | 表示全世界所有的字节 |
utf-8 | 万国码 |
gbk | 只用来编辑汉字 |