python的环境安装
首先安装python的环境,因为任何的编译器都需要一个完整的编译环境去支持这个编译器的正常使用,所以这一步一定要进行的相当仔细,切记切记。
python中判断
- if else
if else 判断的格式如下
if 要判断的条件:
满足条件时要执行的事情
else:
不满足条件时要执行的事情
下面给出if else判断的案例
#判断一个人年龄
age = input('请输入您的年龄')
# 数据类型转换
age = int(age)
print(type(age))
if age >= 18:
print('恭喜您成年了,可以去网吧了')
else:
print('对不起,你还是个宝宝')
可见,在python中if else的结构与c相同,但是语法格式,不同,在各位运用的时候一定不要混淆。
- elif
elif与c语言中switch的用法十分相似,在python中用elif 代替 switch。
下面给出elif的使用格式:
if xxx1:
执行xxx1
elif xxx2:
执行xxx2
elif xxx3:
执行xxx3
else:
以上都不满足要执行的事情
下面给出elif的案例:
#判断成绩为哪种等级
score = input('请输入成绩:')
print(type(score))
score = int(score)
if score >=90 and score <= 100:
print('考试等级为优秀')
elif score < 90 and score >= 80:
print('考试等级为良好')
elif score < 80 and score >=70:
print('考试等级为中等')
elif score < 70 and score >= 60:
print('考试等级为及格')
else:
print('等待补考吧')
切记,elif必须与if共同使用
python中循环
- while循环
while循环的格式如下
while 循环条件:
循环体
while True:
循环体
while True循环是无限循环,while循环的简单案例如下:
i = 0
while i < 5:
print(i)
i += 1
在python中不可以用i++这类的语法,在python要表示i++可以用最原始的表示方法i = i + 1或者是i += 1。(运算符号后加空格是作者自身的编程习惯)
- for
for循环的格式如下
for 临时变量 in 可迭代对象(比如字符串,列表,元组等):
循环体
不同于c和java中for循环的结构和语法,在python中for循环的格式与之相比有了非常大的变化。
下面给出for循环的简单案例:
#打印九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print(j, 'X', i, '=', i*j,' ', end='')
print(end='\n')
在这里有必要说一下range函数的用法。range函数的格式为
range(起始值, 终止值, 步长)
range函数的取值区间为左闭右开。
for循环在python中应用特别广泛,这一部分要认真学习。
- 跳出循环的方式 ,break 和continue
break 跳出本层循环
continue 跳出本次循环,继续执行下一次循环
猜数字案例
生成随机数
from random import randint
用上一段代码来生成一段一定范围内的随机数
# 猜数字游戏
from random import randint
# 玩家在控制台中输入要猜数字的范围 eg:[100, 200]
min_num = int(input('请您输入要猜数字的最小值:'))
max_num = int(input('请您输入要猜数字的最大值:'))
# 生成猜数字的范围
computer_num = randint(min_num, max_num)
# 接下来玩家输入要猜的数字
# 要明确告诉玩家猜大了还是猜小了
# 如果猜对了告诉玩家: 一次猜中:这是高手,
# 2~5猜中,你也太厉害了 i次就猜中了
# 5 次以上 ,洗洗睡吧, i次才猜对
count = 1
while True :
guess_num = int(input('请输入你的答案:'))
if guess_num < computer_num:
print('小了')
count += 1
elif guess_num >computer_num:
print('大了')
count += 1
else:
if count == 1:
print('这是高手,一次就中')
elif count>=2 and count<=5:
print('你也太厉害了,%d次就猜中了'%count)
elif count > 5:
print('洗洗睡吧,兄弟,%d次才猜中啊'%count)
break
print('game over')
print('谢谢您的光顾')
在此程序代码中print('洗洗睡吧,兄弟,%d次才猜中啊'%count)可以有另外的表示方法例如
print('洗洗睡吧,兄弟',count,'次才猜中啊')
print('洗洗睡吧,兄弟',format(count),'次才猜中啊')
这两种表示方法都是可行的。
python中常用数据类型
- 列表list
列表 list 和 c中的数组很像 与数组不同的是可以存储不同类型的数据(灵活)
创建列表 []
hero_name = ['鲁班七号', '狄仁杰', '安琪拉', 1000]
print(hero_name)
#遍历列表
for hero in hero_name:
print(hero)
列表的常见操作
1、访问
格式为:
hero_name[索引值]
print(hero_name[2])
案例如下
x = ['1000']
print(x[0])
2、 修改
hero_name[3] = '后羿'
print('修改后的列表',hero_name)
3、增加
append在列表的末尾增加这个元素
hero_name.append('黄忠')
print('增加后的列表',hero_name)
4、删除 del
格式为:
del 列表名[索引值]
del hero_name[0]
print('删除后的列表',hero_name)
5、列表推导式(明天)
# 生成 1 , 2, 3、、、20 的列表
li = []
for x in range(1, 21):
li.append(x)
print(li)
- 字符串string
定义 "" 和 '' 都可以定义字符串,没区别。但是,在一个语句之中要用一个引号去包含另一个引号的话,需要用单双引号进行区分,防止出现程序错误,程序正常运行。
#如何把列表变成字符串
name = ['z', 'h', 'a', 'o', 's', 'i'] # zhaosi
# join 方法可以将列表变成字符串
str_name = ''.join(name)
str_name = '_'.join(name)
str_name = '/'.join(name)
str_name = '\\'.join(name)
print(str_name)
上述代码中分别可以用这四种符号来隔开字符串,任选其一即可。
1、去空格操作
name2 = ' neusoft '
print(len(name2)) # len 判断变量中元素个数
name2 = name2.strip()
print('去空格之后的长度', len(name2)) # len 判断变量中元素个数
去空格操作只能去掉字符串前方和后方的空格,中间的空格不能去掉。
2、替换 replace
price = '$998'
price = price.replace('$', '¥')
print(price)
price = int(price)
print(price)
此程序会将$转变为¥
- 数字number
数字就很简单了,int类型与c语言差别不大。 - 元组tuple
创建元组与列表很相似,但是元组不支持修改
a = ('zhangsan','lisi', 1000)
1、访问
a = ('zhangsan','lisi', 1000)
a[1]
2、查看类型
a[1] = 1900
print(type(a))
3、只有一个元素的元组如何表示
b = (1000, )
print(type(b))
- 字典dict
以键值对形式存储的数据结构 key value
1、创建字典
info = {'name':'刘强东', 'age': 45, 'addr':'北京市区朝阳区','sex': '男性' }
print(type(info))
print(info)
print(len(info))
2、访问字典中的元素 通过键访问
print(info['name'])
# print(info['sex'])
# 当字典中不存在sex这个键的时候我们可以为他设置默认值
sex = info.get('sex', 'female')
print(sex)
3、修改
info['age'] = 55
print('修改后字典的值', info)
4、增加
如果键不存在就是增加操作
info['sex'] = 'female'
print('增加后字典的值', info)
5、删除
del info['addr']
print('删除后字典的值', info)
6、字典常用方法
# 获取字典中所有的键
print(info.keys())
# 获取字典中所有的值
print(info.values())
# 获取所有的键 --值
print(info.items())
- 集合set
集合{}
#无序,里面的元素不重复
set1 = {111, 6666}
print(set1)
print(type(set1))
for x in set1:
print(x)
中文分词
借助中文分词工具进行分词
- jieba 结巴
安装python第3方工具包
pip install 包名
pip isstall jieba
在用户目录下新建 pip文件夹
新建pip.ini 文件
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
导入jieba库
import jieba
txt = '我来到北京清华大学'
# 精确分词模式(常用) nlp自然语言处理
seg_list = jieba.lcut(txt)
print(seg_list)
# 搜索引擎模式, 先执行精确模式, 然后再对长词进行分析
seg_list2 = jieba.lcut_for_search(txt)
print(seg_list2)