今天2019.07.22,我在哈尔滨,是东软python暑假特训第一天,我会将每天学到的知识在这里保存,也希望能帮到python初学者。
python 动态类型的解释性语言
可以解释为:不用定义 /逐条进行
第一部分 python基础知识
1. Python中判断
-
if else语句
if 要判断的条件:
满足条件时执行的语句
else:
不满足条件时要执行的事情
判断年龄 案例代码
age = input('请输入你的年龄')
print(type(age))# 输出年龄类型是什么
age = int(age)# 数据类型转换
if age >=18:
print('你可以去网吧了')
else:
print('你还是个宝宝,你不能去网吧')
-
elif语句
用elif 代替 switch elif必须跟if一起使用
if xxx1:
执行xxx1
elif xxx2:
执行xxx2
elif xxx3:
执行xxx3
else:
以上都不满足执行的事情
将考试成绩分等级 案例代码
score = input('请输入你的成绩:')
score = int(score)
if score >= 90 and score <=100:
print('你的考试成绩是A级')
elif score >= 75 and score <=90:
print('你的考试成绩是B级')
elif score >= 60 and score <= 75:
print('你的考试成绩是C级')
else:
print('你的考试成绩是不及格')
2. Python中循环和跳出
-
while语句
while 循环条件:
循环体
while True:
循环体
简单实例
i = 0
while i < 5:
print(i)
i += 1
生成一定范围内的随机数语句
from random import randint
print(randint(20,30))
长生随机数的范围规定是左闭右闭的
验证左闭右闭代码
from random import randint
while True:
print(randint(20,21))
-
for循环语句
for 临时变量 in可迭代对象(比如字符串,列表元组等):
循环体
例
company = 'harbin'
for i in company:
print(i)
把列表中0到99一百个数用循环表示 案例代码
print(list(range(100)))
for i in range(100):
print(i) #for实现
i = 0
while i<100:
print(i)
i += 1 #while实现
打印99乘法表 案例代码
for i in range(1, 10):
for j in range(1, i+1):
print(j, 'X', i, '=', i*j,' ', end='') #print()函数默认换行 要是想要不换行的 在内部用end=' '
print()
-
跳出循环的方式:continue和break
求1~100之间的所有奇数的和 案例代码
i = 1
sum_sum = 0
while i <= 100:
if i%2 ==0:
i += 1
continue
sum_sum += i
i += 1
print(sum_sum)
-
猜数字游戏
1.玩家在操控台中输入药要猜数字的范围 eg:[100-200]
2.接下来玩家输入要猜的数字
3.要明确告诉玩家是猜大了还是小了
4.如果猜对了告诉玩家:一次猜中:这是高手,2-5次猜中:你也太厉害了i次就猜中了,5次以上:快洗洗睡吧,i次才猜中
案例代码
from random import randint
# 玩家在操控台中输入要猜数字的范围 eg:[100-200]
max_num = int(input('请您输入要猜数字的最大值:'))
min_num = int(input('请您输入要猜数字的最小值:'))
#生成数字范围
computer_num = randint(min_num, max_num)
# print(computer_num)
# 接下来玩家输入要猜的数字
# 要明确告诉玩家是猜大了还是小了
#如果猜对了告诉玩家:一次猜中:这是高手,2-5次猜中:你也太厉害了i次就猜中了,5次以上:快洗洗睡吧,i次才猜中
count = 0
while True:
guess_num = int(input('你可以猜了'))
count +=
if guess_num < computer_num:
print('你猜的数字太小了')
elif guess_num > computer_num:
print('你猜的数字太大了')
else:
if count == 1:
print('这是高手')
elif count > 1 and count <= 5:
print('你也太厉害了', count, '次就猜对了')
else:
print('洗洗睡吧', count, '次才猜对')
break
3.Python中常用的数据类型
-
列表 list
list 和 c中的数组很像 与数组不一样的地方是 可以存贮不同类型的数据(灵活)
创建和遍历列表 [ ]
hero_name = ['鲁班七号', '狄仁杰', '安琪拉', 1000]
print(hero_name)
# 遍历列表
for hero in hero_name:
print(hero)
常见的列表操作
1.访问
hero_name[索引值]
2.修改
hero_name[3] = ' 后羿'
3.增加 append是在列表末尾增加元素
hero_name.append('黄忠')
4.删除 del
del 列表名[索引值]
案例代码
hero_name = ['鲁班七号', '狄仁杰', '安琪拉', 1000]
print(hero_name)
print(hero_name[2])
hero_name[3] = ' 后羿'
print('修改后的列表', hero_name)
hero_name.append('黄忠')
print('增加后的列表', hero_name)
del hero_name[0]
print('删除后的列表', hero_name)
列表推导式(明讲)
生成1.2.3....20 的列表 案例代码
li = []
for x in range(1,21):
li.append(x)
print(li)
-
字符串 string
" " 和 '' 都可以定义字符串 ,没区别
但在某种情况下,想写'hello'world
test = "'hello'world"
print(test)
test = '"hello"world'
print(test)
把列表变成字符串
#如何把列表变成字符串
name = ['z', 'h', 'a', 'o', 's', 'i']
#join 可以把列表变成字符串 .前面是分隔符
str_name = ''.join(name)
print(str_name)
str_name = '_'.join(name)
print(str_name)
str_name = '\\'.join(name)
#C:/Users/小九九/Desktop/herbin722/aa
print(str_name)
str_name = '/'.join(name)
print(str_name)
去空格
name2 = ' neusoft '
print(len(name2))
name2 = name2.strip()
print('去空格后的长度', len(name2))
替换
price = '$998'
print(price)
price = price.replace('$', '')
print(price)
-
数字 number
int ,float两种
-
元组 () tuple
与列表很相似 但是元组不支持修改 但节省空间
创建元组和遍历
a = ('zhangsan', 'lisi', 1000)
print(a)
for i in a:# 遍历元组
print(i)
访问和判断类型
a = ('zhangsan', 'lisi', 1000)
print(a[1])
print(type(a))
b = ('1000')
print(type(b))
#只有一个元素的元组如何表示
b = ('1000',)
print(type(b))
-
字典 dict {}
以键值对形式的存储的 数据结构 key————value
创建字典
info = {'name': '刘强东', 'age': 45, 'addr': '北京市朝阳区', 'sex': 'nan'}
print(type(info))
print(info)
print(len(info))
访问字典中的元素
info = {'name': '刘强东', 'age': 45, 'addr': '北京市朝阳区'}
print(info['name'])
print(info['age'])
# 当字典中不存在sex这个键的时候我们可以为他设置默认值
sex = info.get('sex', 'female')
print(sex)
# 但是若字典中存在sex这个键的时候按照它存在的读取
info = {'name': '刘强东', 'age': 45, 'addr': '北京市朝阳区', 'sex':'男性'}
sex = info.get('sex', 'female')
print(sex)
# 获取字典中所有的键
print(info.keys())
# 获取字典中所有的值
print(info.values())
# 获取字典中所有的键———值
print(info.items())
修改和添加
info = {'name': '刘强东', 'age': 45, 'addr': '北京市朝阳区'}
info['age'] = 55
print('修改后的值', info)
#增加 如果键不存在就是增加操作
info['sex'] = 'female'
print('增加后字典的值', info)
删除地址元素
info = {'name': '刘强东', 'age': 45, 'addr': '北京市朝阳区'}
del info['addr']
print('删除后字典的值', info)
-
集合 set
特点:无序
set = {111, 555, 45}
print(type(set))
for x in set:
print(x)
4. 中文分词
用到工具包jieba,安装python第三方工具包pip install 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)
两种方式,第一种方式一般就很常用。
第一天学到的内容就这些了,经过了一天的学习收获很多,这是老师带着学习的,希望自学的小伙伴要更加要努力。就这些,感谢老师,岩哥辛苦,piupiupiu。