一、二进制与字符编码
1.1、计算机为什么能够认识我?
它只认识0和1,根本不认识我,早期的程序员爸爸为了让计算机能够认识我,将我能够认识的符号和数字对应好,然后做成一张表叫ASCII表,告诉计算机某种符号你应该使用哪个整数表示,’A’使用了8个位(置)才能装得下我,在计算机中他们叫一个字节
print(chr(0b100111001011000)) #乘
print(ord('乘')) #20056
1.2、字符编码类型
二、Python中的标识符和保留字
2.1、保留字
有一些单词被我赋予了特定的意义,这些单词你在给你的任何对象起名字的时候都不能用
import keyword
print(keyword.kwlist)
['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']
2.2、标识符及其规则
2.2.1标识符:
变量、函数、类、模块和其它对象的起的名字就叫标识符
2.2.2标识符规则:
1、可以是字母、数字、下划线_
2、不能以数字开头
3、不能是我的保留字
4、严格区分大小写的
三、变量的定义和使用
3.1、变量
变量就像一个带标签的盒子,你把需要的数据放进去
3.2、变量由三部分组成
1、标识:表示对象所存储的内存地址,使用内置函数id(obj)来获取
2、类型:表示的是对象的数据类型,使用内置函数type(obj)来获取
3、值:表示对象所存储的具体数据,使用print(obj)可以将值进行打印输出
name='马丽亚'
print(name)
print('标识',id(name))
print('类型',type(name))
print('值',name)
3.3、当多次赋值之后,变量名会指向新的空间
name='马丽亚'
print(name)
name='楚溜冰'
print(name)
四、数据类型
4.1、常用的数据类型
整数类型:int——98……
浮点数类型:float:3.14159……
布尔类型:bool——True ,False
字符串类型:str——人生苦短,我用Python’……
4.2、整数类型
1、英文为integer,简写为int,可以表示正数、负数和零
2、整数的不同进制表示方式
十进制:默认的进制
二进制:以0b开头
八进制:以0o开头
十六进制:0x开头
n1=90
n2=-76
n3=0
print(n1,type(n1))
print(n2,type(n2))
print(n3,type(n3))
#整数可以表示为二进制,十进制,八进制,十六进制
print('十进制',118)
print('二进制',0b10101111) #二进制以0b开头
print('八进制',0o176) #八进制以0o开头
print('十六进制',0x1EAF)
4.3、浮点类型
1、浮点数整数部分和小数部分组成
2、浮点数存储不精确性
1)使用浮点数进行计算时,可能会出现小数位数不确定的情况
print(1.1+2.2) #3.3000000000000003
print(1.1+2.1) #3.2
2)解决方案
导入模块decimal
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2')) # 3.3
4.4、布尔类型
1、用来表示真或假的值
2、True表示真,False表示假
f1=True
f2=False
print(f1,type(f1))
print(f2,type(f2))
3、布尔值可以转化为整数 :True-->1;False-->0
print(f1+1) #2 1+1的结果为2 True表示1
print(f2+1) #1 0+1的结果为1,False表示0
4.5、字符串类型
1、字符串又被称为不可变的字符序列
2、可以使用单引号’’ 双引号”” 三引号’’’ ’’’ 或””” ”””来定义
3、单引号和双引号定义的字符串必须在一行
4、三引号定义的字符串可以分布在连续的多行
str1='人生苦短,我用Python'
str2="人生苦短,我用Python"
str3="""人生苦短,
我用Python"""
str4='''人生苦短,
我用Python'''
print(str1,type(str1))
print(str2,type(str2))
print(str3,type(str3))
print(str4,type(str4))
五、数据类型转换
5.1、为什么需要数据类型转换?
5.1.1、目的:
将不同数据类型的数据拼接在一起
5.1.2、数据类型转换函数
5.2、例子
name='张三'
age=20
print(type(name),type(age)) #说明name与age的数据类型不相同
#print('我叫'+name+'今年,'+age+'岁')
#当将str类型与int类型进行连接时,报错,解决方案,类型转换
print('我叫'+name+'今年,'+str(age)+'岁') #将int类型通过str()函数转成了str类型
5.2.1、str()将其它类型转成str类型
a=10
b=198.8
c=False
print(type(a),type(b),type(c))
print(str(a),str(b),str(c),type(str(a)),type(str(b)),type(str(c)))
5.2.2、int()将其它的类型转int类型
s1='128'
f1=98.7
s2='76.77'
ff=True
s3='hello'
print(type(s1),type(f1),type(s2),type(ff),type(s3))
print(int(s1),type(int(s1))) #将str转成int类型 ,字符串为 数字串
print(int(f1),type(int(f1))) #float转成int类型,截取整数部分,舍掉小数部分
#print(int(s2),type(int(s2)))
#将str转成int类型,报错,因为字符串为小数串
print(int(ff),type(int(ff)))
#print(int(s3),type(int(s3)))
#将str转成int类型时,字符串必须为数字串(整数),非数字串是不允许转换
5.2.3、float()函数,将其它数据类型转成float类型
s1='128.98'
s2='76'
ff=True
s3='hello'
i=98
print(type(s1),type(s2),type(ff),type(s3),type(i))
print(float(s1),type(float(s1)))
print(float(s2),type(float(s2)))
print(float(ff),type(float(ff)))
#print(float(s3),type(float(s3)))
#字符串中的数据如果是非数字串,则不允许转换
print(float(i),type(float(i)))
六、Python中的注释
1、在代码中对代码的功能进行解释说明的标注性文字,可以提高代码的可读性2、注释的内容会被
2、Python解释器忽略
3、通常包括三种类型的注释
1)单行注释:以”#”开头,直到换行结束
2)多行注释:并没有单独的多行注释标记,将一对三引号之间的代码称为多行注释
3)中文编码声明注释à在文件开头加上中文声明注释,用以指定源码文件的编码格式
#单行注释
'''嘿嘿,
我是
多行注释'''
注:
Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码:
# coding:gbk
# 指定源码文件以gbk进行存储
# 写在开头