02_Python3基础
Python的脚本后缀名是以
.py
结尾的执行Python代码
在dos界面,输入命令
python 需要执行的py文件
输出/打印内容 print()
print('李四')
print(5)
- 修改print() 结束符
print默认是以\n换行为结尾
如果需要修改print的结束符,在print最后增加,end='以什么结尾'
print(需要输出的内容,end='')
print('hello',end='>>>>>>>>>')
print('world',end='\t')
print('python',end='<<<<<<<<<<<<')
数据类型
在Python3中基本的数据类型有三个
- 字符串 str
- 整型 int
- 浮点型 float
字符串使用引号引起来
注意一下必须是用成对成对的引号引起来,也就是以什么引号开头,就要以什么引号结尾。
'张三'
"张三"
'''张三'''
"""张三"""
- 数据类型之间的转换
str() 转换成字符串 int()转换成整型 float()转换成浮点型
a = '5.6'
a = int(a)
print(type(a))
print(a)
- int类型 和float类型可以转换成str数据类型
- str类型不一定可以转换成int 或者 float类型
- int 和 float 可以互相转换
字符串常用方法
- 获取字符串的长度 len()
lenth = len(a)
print(lenth)
- split()分割字符串
a = '23462346@qq.com'
# 切割字符串,将字符串切割成列表
qqnum = a.split('@')
print(qqnum)
- 统计字符串中字符的个数
a ='hello,world'
a.count('o')
- 读取字符串的某一个字符 读取长度[下标],下标从0开始
bingo = a[3]
print(bingo)
- 拼接 (只能够用在字符串与字符串之间)
b = 'hello,'
c = b+a
print(c)
- 多倍运算 (只能够用在字符串与整数之间)
print(a*5)
- 格式化输出字符串
name = '李四'
age = 18
nation = '汉族'
location = '深圳市'
msg = '你好,我是{0},我今年{1}岁,我是{2}人,来自{3}'.format(name,age,nation,location)
print(msg)
- 转义字符
\n >>> 换行 \t >>> tab键
# 如果我想打印出来的是"随便打\n印一\t行字符串"
print('随便打\\n印一\\t行字符串')
print(R'随便打\n印一\t行字符串')
- 判断 in /not in ,如果成立,则返回True 否则返回False
a = 'world'
result = 'or' in a
- and /or
# result1 = 'o' in a or 'asdb' in a
result1 = 'o' in a and 'asdb' in a
print(result1)
变量
在Python定义变量其实就是给一个值取一个名字,或者给某一个变量赋值
name='张三'
讲变量之前,我们先来看一看这一段代码,这个代码的意思就是说把张三这个字符串给到了name,把一个值(张三)赋值给一个名字(name)。变量名就像我们现实社会的名字,把一个值赋值给一个名字时,称之为变量(variable),在大多数语言中,都把这种行为称为“给变量赋值”或“把值存储在变量中”。
定义变量使用=定义,=左边的是变量名,=右边的是变量的值
变量名=变量值
- 在使用变量之前,需要定义变量。
- 变量名可以包括字母、数字、下划线,但变量名不能以数字开头。
- 字母可以是大写或小写,但大小写是不同的。
- 等号(=)是赋值的意思,左边是名字,右边是值,不可写反咯。
- 变量的命名理论可以取任何合法的名字,但作为一个优秀的程序员,请将尽量给变量取一个专业一点儿的名字
- 变量名应当避开Python的关键字/保留字
- 删除变量
del
a = 15
del a
- 查看变量数据类型 type()
a = 15
b = 1.5
c = '1.5'
print(type(a))
print(type(b))
print(type(c))
- 同时定义多个变量相同的值
a = b = c = 5
print(a)
print(b)
print(c)
- 同时定义多个变量不同的值
a,b,c = 3,4,7
print(a)
print(b)
print(c)
算术运算(只能够用在数字与数字之间)
- 加法
+
- 减法
-
- 乘法
*
- 除法
/
- 地板除
//
- 求余数除法
%
- 幂运算
**
print(b+c)#加法
print(b-c)#减法
print(b*c)#乘法
print(b/c) #除法
print(b//c)#地板除 求整数部分
print(b%c)#求余数的部分
print(b**c)#幂运算 b的c次方
input() 接受用户的输入
name = input('请输入您的姓名:')
print('您输入的是{0}'.format(name))
常见比较操作符
符号 | 含义 |
---|---|
== | 相等/等于 |
<= | 小于等于 |
>= | 大于等于 |
< | 小于号 |
> | 大于号 |
!= | 不等于 |
if...else语句
在冒号后:下一行后带有缩进,缩进是Python核心,Python就是通过缩进来控制代码的。
缩进(一个tab/四个空格) 不可以混着用.。
假设 用户名 为admin,密码为 admin123,写一个程序判断用户是否登录成功
username = input('请输入用户名')
password = input('请输入密码')
if username == 'admin' and password == 'admin123':
print('登录成功')
print('正在进入程序。。。。')
else:
print('用户名或密码错误')
print('登录失败')
那如果有多个条件需要判断,则需要使用elif语句
语法:
if 条件1:
条件1成立时执行
elif 条件2:
条件2成立时执行
elif 条件3:
条件3成立时执行
elif 条件4:
条件4成立时执行
else:
所有条件都不成立,才执行
比如:根据分数判断等级
81 - 100 >>>> A
60 - 80 >>>> B
40 - 59 >>>> C
0 - 39 >>>> D
不在0-100 之间 >>> 输入错误
score = int(input('请输入分数'))
if 81 <= score <= 100:
print('A')
elif 60 <= score <=80:
print('B')
elif 40 <= score <=59:
print('C')
elif 0 <= score <=39:
print('D')
else:
print('输入错误')
循环
- while 循环
语法:
while 条件:
循环内容
- 当条件为True的时候,才会执行循环内容
- 每一次循环结束,会再次检查条件是否成立
- 使用while循环一定要控制好条件,否则容易出现死循环
# 定义次数为3
times = 3
while times > 0:
print('当条件成立时')
print('执行while循环')
print('每一次循环结束的时候,会再一次检查条件是否成立')
times = times - 1
优化猜数字游戏
num = 8
# 定义次数为3
times = 3
while times > 0:
guess = int(input('请输入1-10之间的整数'))
if guess == num:
print('猜对了')
times = -999
elif guess > num:
print('大了')
else:
print('小了')
times = times - 1
1+2+3+4+...100的和
# 定义和等于0
sums = 0
num = 1 # 从1开始加
while num <=100:
sums = sums + num
num = num +1
print(sums)
continue 与break
- continue 跳出循环,并且开始下一次的循环
- break 终止循环
index = 1
while index < 10:
print(index)
if index == 5:
print('执行continue语句')
continue
index = index + 1
print('>>>>>>>>>>>>>>>>>>>>>>>>>')
index = 1
while index < 10:
print(index)
if index == 5:
print('执行break语句')
break
index = index + 1
print('>>>>>>>>>>>>>>>>>>>>>>>>>')
结合break与continue优化猜数字游戏
num = 8
# 定义次数为3
times = 3
while times > 0:
guess = int(input('请输入1-10之间的整数'))
if guess < 1 or guess > 10:
print('输入错误')
continue
elif guess == num:
print('猜对了')
break
elif guess > num:
print('大了')
else:
print('小了')
times = times - 1
异常处理
try:
print('这是try语句的内容')
int('aaaa')
print('try语句报错,就直接跳转执行except语句')
except:
print('这是except语句的内容')
print('只要当try语句中的内容报错了')
print('才会执行except语句')
try:
num = float(input('请输入一个小数'))
num2 = int(num+0.5)
print('您输入的是{0},四舍五入后为{1}'.format(num,num2))
except:
print('输入错误')
词典(键值对)
一个键(key)对应一个值(value),是一个一一对应的数据类型
词典用{}表示,词典中的每一对用,分隔开。键与值之间用:对应
key/键是唯一的
a = {'中国移动':10086,'中国联通':10010,'中国电信':10000}
- 读取词典的内容,通过key来读取
print(a['中国移动'])# 如果读取的key不存在,会报错
print(a.get('中国移动'))# 如果读取的key不存在,则返回None
- 判断词典中是否存在这个key 使用 in、not in
result = '中国移动' in a
print(result)
result2 = 'aaaa' in a
print(result2)
- 修改key的值
a['中国移动'] = '12345'
print(a)
- 增加一项
a['中国铁通'] = '不知道'
print(a)
- 删除词典某一项
del a['中国铁通']
print(a)
- keys() 所有的键
print(a.keys())
- values() 所有的值
print(a.values())
- items() 所有的键值对
print(a.items())
for循环
for 循环是根据目标的元素个数来决定循环的次数
语法如下:
for 变量 in 目标:
循环内容
目标有多少个元素,就循环多少次
a = ['python','java','php']
for i in a:
print(i)
print('for循环,每一次循环会找到目标的一个元素')
print('并且赋值个变量,直到所有的元素都找完')
通常配合for循环一起使用的就是range()函数
range()三种用法
range(10) # 表示生成0,1,2,3,4,5,6,7,8,9
range(1,10) # 表示生成1,2,3,4,5,6,7,8,9
range(1,10,2) # 表示生成1,3,5,7,9
一筐球 红色有6个, 黄色有3个,每次随机拿4个球
for red in range(1,5):
for yellow in range(4):
if red+yellow == 4:
print('红球有{0}个,黄球有{1}个'.format(red,yellow))
列表
在其他编程语言中有的称之为数组,列表是python仓库,他可以存放所有的数据。列表用[]表示,列表中的每一项用,分隔开
- 列表用[]表示,列表中的每一项用,分隔开
a = [3,3.14,'world',5]
- 获取列表的个数
print(len(a))
- 读取列表的内容,用[下标]来读取
print(a[2])
- 删除列表的元素
del a[1]
print(a)
- 修改列表的元素
a[2] = 'hello'
print(a)
- 往列表增加一个元素 列表.append(元素)
a.append('python')# 将python增加到列表a的尾部,一次只能增加一个元素
- reverse 倒序排序,修改原来列表
a.reverse()
print(a)
- 升序排序,修改原来列表
a.sort()
print(a)
- sorted() 升序排序,不会修改原来的列表
b = sorted(a)
print(a)
print(b)
- 倒序输出列表 [::-1]
a = [5,2,3,1,7,9,8,11,12,13,111,23,345]
a[::-1]
元组
元组是一个不可变的列,用()表示,每一项用,分隔开
a = (1,2,3,1,23)
- 如果元组只有一个元素时,则需要在该元素后增加,
a = (2,)
访问元组元素的方法,与列表一样,通过下标访问,大部分的方法例如切片等等都可以使用
a = (1,2,3,1,23)
print(a[2])
集合
集合 {} 里面的每一项用,分隔开
集合里面的元素是唯一的
c = {3,4,3,4,1,2,3,4,12,3,4,5}
print(c)
- 增加元素
c = {1,2,1,2,3,54,2}
c.add(5)# 增加一个元素
c.update([1,2,3,4,5,6,11,12,13,14,15])#增加多个元素
print(c)