Python笔记
一、概述
1.1、Python中的输出函数
- print()函数可以输出哪些内容
1). print()函数输出的内容可以是数字
2). print()函数输出的内容可以是字符串
3). print()函数输出的内容可以是含有运算符的表达式 - print()函数可以将内容输出的目的地
1). 显示器
2). 文件 - print()函数的输出形式
1). 换行
2). 不换行
# 输出数字
print(520)
print(98.5)
# 输出字符串
print('hello world')
# 输出表达式
print(3 + 1)
# 将数据输出文件中
# 注意点,1,所指定的盘符在存在,2.使用file= fp
fp = open('E:\\text.txt', 'a+') # 如果文件不存在就创建,存在就在文件内容的后面继续追加
print('helloworld', file=fp)
fp.close()
1.2、转义字符
换行: \n
回的 : \r
水平制表符 : \t
退格: \b
#原字符,不希望字符串中的转义字符起作用,就使用原字符,就是在字符串之前加上r,或R
print(r'hello\nworld')
hello\nworld
二、数据类型与字符串
2.1、保留字
import keyword
print(keyword.kwlist) # 列出保留字
2.2、变量的定义和使用
标识:表示对象所存储的内存地址, 使用内置函数id(obj)
来获取
类型:表示的是对象的数据类型,使用内置函数type(obj)
来获取
值:表示对象所存储的具体数据,使用print(obj)
可以将值进行打印输出
变量名 赋值运算符 值
name = 'YoRHa'
print('标识', id (name))
print('类型', type (name))
print('值', name)
2.3、常用的数据类型
- 整数类型→>int →98
- 浮点数类型→float >3.14159
- 布尔类型→bool →>True ,False
- 字符串类型→str →’人生苦短,我用Python’
2.3.1 整数类型
十进制→默认的进制
二进制→以0b开头
八进制→以0o开头
十六进制→Ox开头
2.3.2 浮点数类型
浮点数存储不精确性 可导入模块decimal
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2')) # 3.3
print(1.1+2.2) # 3.3000000000000003
2.3.3、布尔类型
布尔值可以转化为整数
True→1
False→>0
print(True+1)#2
print(False+1)#1
2.3.4、 字符串类型
- 字符串又被称为不可变的字符序列
- 可以使用单引号
'
双引号""
三引号"""
或'''
来定义 - 单引号和双引号定义的字符串必须在一行
- 三引号定义的字符串可以分布在连续的多行
str1='人生苦短,我用Python'
str2="人生苦短,我用Python"
str3="""人生苦短
我用Python"""
str4='''人生苦短
我用Python'''
2.4、数据类型转换
#print('我叫'+name+'今年, ' +age+'岁') #当将str类型与int类型进行连接时,报错,解决方案,类型转换
1.将int类型转换为str类型,例: str(20)
2.将浮点型转换之后int类型,例int (98.7)
3.str类型转换到int类型只能是整数串才能转换,其余的小数串,英文串都不可以。
4.字符串中的非数字串的不可以转换成int,float数据类型
5.float转成int类型,截取整数部分,舍掉小数部分
2.5、注释
1.单行注释(#)
2多行注释('''
)
2.6、输入函数input()
input()接收的值为str类型
name=input("name:")
print(name)
2.7、运算符
2.7.1、算数运算符
print (1+1)#加法运算
print (1-1)#减法运算
print (2*4)#乘法运算
print (1/2)#除法运算
print (11//2)#整除运算 5
print(-9//4)#一整一负向下取整 -3(负数-2>-3)
print(11%2)#取余运算
print(2**2)#表示的是2的2次方
print(2**3)#表示的是2的3次方
2.7.2、赋值运算符
- 执行顺序:右→左
- 支持链式赋值
a=b=c=20 - 支持参数赋值
+=、-=、*=、/=、1/=、 - 支持系列解包赋值
a,b,c=20,30,40 - 交换赋值
a,b=b,a
2.7.3、比较运算符
print('a>b吗?',a>b)#False
print('a<b吗?',a<b) #True
print('a<=b吗?',a<=b)#True
print('a>=b吗?',a>=b)#False
print('a==b吗?',a==b)#False
print('a!=b吗?',a !=b) #True
比较对象的标识使用is 与 is not
print(a==b)#True说明,a与b的value相等
print(a is b )#True说明,a与b的id标识,相等
2.7.4、布尔运算符
- and
当两个运算数都为True时,运算结果才为True - or
只要有一个运算数为True,运算结果就为True - not
如果运算数为True,运算结果为False
如果运算数为False,运算结果为True
2.7.5、位运算符
- 位与&
对应数位都是1,结果数位才是1,否则为0 - 位或|
对应数位都是0,结果数位才是0,否则为1 - 左移位运算符<<
高位溢出舍弃,低位补0(左移一位相当于乘2) - 右移位运算符>>
低位溢出舍弃,高位补0(左移一位相当于除2)
print(4&8)#按位与&,同为1时结果为1
print(4|8)#按位或|,同为0时结果为0
print(4<<1)#向左移动1位(移动一个位置)相当于乘以2
print(4<<2)#向左移动2位(移动2个位置)
print(4>>1)#向右移动1位,相当于除以2
print(4>>2)#向右移动2位、相当于除以4
2.7.6、运算符优先级
算术运算符>位运算>比较运算>布尔运算>赋值运算
先乘除取余后加减,有幂运算就先它
左右移位再与或
2.7.7、对象的布尔值
以下对象的布尔值为False
- False
- 数值0
- None
- 空字符串
- 空列表
- 空元组
- 空字典
- 空集合
三、流程控制
3.1、分支结构
3.1.1、单分支结构
语法结构:
if 条件表达式:
条件执行体
a=100
if a=100:
print("YES")
3.1.2、双分支结构
语法结构:
if 条件表达式:
条件执行体A
else:
条件执行体B
a=100
if a=100:
print("YES")
else:
print("NO")
3.1.3、多分支结构
语法结构:
if 条件表达式1:
条件执行体1
elif 条件表达式2:
条件执行体2
elif条件表达式N:
条件执行体N
[else:]
条件执行体N+1
score=int (input(’请输入一个成绩:’))#判断
if score>=90 and score<=100 :
print('A级')
elif score>=80 and score<=89:
print('B级')
elif score>=70 and score<=79 :
print('C级')
elif score>=60 and score<=69 :
print('D级')
elif score>=0 and score<=59:
print('E级')
else:
print('对不起,成绩有误,不在成绩的有效范围')
3.1.4、嵌套结构
语法结构:
if条件表达式1:
if 内层条件表达式:
内存条件执行体1
else:
内存条件执行体2
else:
条件执行体
answer=input(’您是会员吗?y/n')
money=float(input(’请输入您的购物金额:'))
#外层判断是否是会员
if answer=='y':#会员
if money>=200:
print('打8折,付款金额为:',money*0.8)
elif money>=100:
print('打9折,付款金额为:', money*0.9)
else:
print(不打折,付款金额为:',money)
else:
print('非会员')
3.1.5、条件表达式比较
print('使用条件表达式比较')
print( (num_a,'大于等于', num_b) if num_a>=num_b else (num_a '小于' , num_t)
3.2、pass语句
语句什么都不做,只是一个占位符,用在语法上需要语句的地方
什么时候使用:先搭建语法结构,还没想好代码怎么写的时候
哪些语句一起使用:if语句的条件执行体、for-in语句的循环体、定义函数时的函数体
3.3、range()函数
range(stop)
创建一个[0,stop)之间的整数序列,步长为1
r=range(10)
range(start,stop)
创建一个[start,stop)之间的整数序列,步长为1
r=range(1,10)
range(start,stop,step)
创建一个[start,stop)之间的整数序列,步长为step
r=range(1,10,2)
返回值是一个迭代器对象
in与not in判断整数序列中是否存在(不存在)指定的整数
print(10 in r)#False ,10不在当前的r这个整数序列中
print(9 in r) #True, 9在当前的r这个序列中
3.4、while循环
while a<10:
#执行条件执行体
print(a)
a+=1
3.5、for-in循环
for-in的语法结构
for 自定义的变量 in 可迭代对象 :
循环体
for item in 'Python'
print (item)
for i in range (10):
print (i)
#如果在循环体中不需要使用到自定义变量,可将自定义变量写为“_”
for _ in range ():
print(’人生苦短,我用Python')
3.6、流程控制语句break
a=0
while a<3 :
pwd=input(’请输入密码:')
if pwd=='8888’:
print('密码正确')
break
else:
print('密码不正确')
a++
3.7、流程控制语句continue
for item in range(1,51):
if item%5!=O:
continue
print(item)
Python笔记(二)
四、列表与元组
五、字典与集合
点此跳转
Python笔记(三)
六、字符串
七、函数
八、类与面向对象
九、模块
十、文件操作
点此跳转