02_Python3基础


Python的脚本后缀名是以.py结尾的

执行Python代码

在dos界面,输入命令
python 需要执行的py文件

输出/打印内容 print()

print('李四')
print(5)
  • 修改print() 结束符

print默认是以 换行为结尾
如果需要修改print的结束符,在print最后增加,end='以什么结尾'
print(需要输出的内容,end='')

print('hello',end='>>>>>>>>>')
print('world',end='	')
print('python',end='<<<<<<<<<<<<')

数据类型

在Python3中基本的数据类型有三个

  • 字符串 str
  • 整型 int
  • 浮点型 float

字符串使用引号引起来
注意一下必须是用成对成对的引号引起来,也就是以什么引号开头,就要以什么引号结尾。

'张三'
"张三"
'''张三'''
"""张三"""
  • 数据类型之间的转换

str() 转换成字符串 int()转换成整型 float()转换成浮点型

a = '5.6'
a = int(a)
print(type(a))
print(a)
  1. int类型 和float类型可以转换成str数据类型
  2. str类型不一定可以转换成int 或者 float类型
  3. 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)
  • 转义字符
    >>> 换行 >>> tab键
# 如果我想打印出来的是"随便打
印一	行字符串"
print('随便打\n印一\t行字符串')
print(R'随便打
印一	行字符串')
  • 判断 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),在大多数语言中,都把这种行为称为“给变量赋值”或“把值存储在变量中”。

定义变量使用=定义,=左边的是变量名,=右边的是变量的值

变量名=变量值
  1. 在使用变量之前,需要定义变量。
  2. 变量名可以包括字母、数字、下划线,但变量名不能以数字开头。
  3. 字母可以是大写或小写,但大小写是不同的。
  4. 等号(=)是赋值的意思,左边是名字,右边是值,不可写反咯。
  5. 变量的命名理论可以取任何合法的名字,但作为一个优秀的程序员,请将尽量给变量取一个专业一点儿的名字
  6. 变量名应当避开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 条件:
    循环内容
  1. 条件为True的时候,才会执行循环内容
  2. 每一次循环结束,会再次检查条件是否成立
  3. 使用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

  1. continue 跳出循环,并且开始下一次的循环
  2. 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)
原文地址:https://www.cnblogs.com/jianxiaochong/p/13445948.html