Python学习第二天

elif switch

score = input('成绩为')
score = int(score)
if score>=90 and score<=100:
    print('你的成绩等级为A')
elif score >=80 and score<90:
    print ('考试等级B')
elif score>=0 and score<60:
    print ('不及格')

python中的循环

先介绍for循环

格式:
for 临时变量 in 可迭代对象:
循环体

name = 'zhou'
for i in name:
    print(i)
    if i =='h':
        print('哈哈')
循环次数那里去了?

range(起始位置,终止位置,步长)可以写循环次数

起始位置省略默认为0,步长省略为1,范围是左闭右开
# 给女朋友道歉一百次
for x in range(1,101,2):
    print('对不起我错了,这是我',x,'次向你道歉')
这个i是什么鬼? i 是临时变量不用 提前声明 python自动创建

1.1 常用数据类型

数字、列表、字符串、字典、元组、集合

1.1.1列表

类似于C中的数组,但是与数组不同的是,list可以存储不同类型的数据

创建一个列表
herolist = ['鲁班大师','金鹏',"鲁班七号",'孙悟空',1,0.1]
print(herolist)
总结:列表使用[]进行创建
为什么要使用列表?

列表可以将我们需要的很多元素封装到一个容器中

列表的相关操作
1.访问列表中的元素 列表名[索引]
print (herolist[1],herolist[4],"操作")
2.添加元素append是在列表的末尾进行添加元素
herolist.append('姜子牙')
print ('添加后的列表',herolist)
3.修改
herolist[3] = '貂蝉'
print('修改后的列表',herolist)
4.删除
del herolist[5]
print ('删除后的列表',herolist)
便利herolist
for hero in herolist:
     print (hero)
len()可以检测对象的元素个数
for p in range(len(herolist)):
    if herolist[p] =='孙悟空':
         print('恭喜')
    else:
         print('没有英雄')
for p in range(6):
     print(herolist[p])
生成一个[0,1,2......20]的列表
可以使用循环来创建
创建一个空的列表
 zax = []
使用循环不停的append
for i in range(21):
     zax.append(i)
     print(zax)
python制作进度条
安装tqdm库
pip install tqdm库的名称
导入tqdm
from tqdm import tqdm
import time
mylist = []
for i in range(10):
    mylist.append(i)
便利mylist
for x in tqdm(mylist):
    time.sleep(2)
字符串
表示"" ''
要注意的是
name = 'k"o"be'
print(name)
访问
print(name[2])
修改
name[1]='x'
print(name)
name = "kobe"
print(name)
常用操作
price = '¥9.9'
字符串的替换
price = price.replace("¥","")
print(price)
价格涨价10倍
new_price=float(price)*10
print(new_price)
写一个价值一亿的AI代码
 while True:
    seg = input('')
     seg = seg.replace('吗?','!')
     print(seg)
strip 去空格操作
name = '  zhou  '
print(len(name))
name = name.strip()
print(len(name))
join # 将列表变成字符串
li = ['你','好','shuai']
li = '\\'.join(li)
print(li)

元组

tuple()
list()
int()

创建

元组和列表很相似,只不过不能修改

a = (1,'1',5)
print(a)
print(type(a))
访问
 print(a[2])
a[2]=6
元组的用处:

1.不能修改,写保护,安全,python内置函数返回类型都是元组
2.相对于列表来讲,元组更节省空间,效率更高

掌握

1.拥有一个元素的元组
b = (100,)
print(type(b))
我们经常使用的组合方式:
list2 = [('a',22),('b',66),('k',99)]
字典
创建字典 key - value
info = {'name':'崔天池','age':50,'gander':'men'}
print(type(info))
访问字典 通过建访问值
print(info['name'])
访问不存在的建
print(info['add'])
当不存在这个键的时候,可以返回默认设置的值,有这个键就正常返回
print(info.get('addr','抚顺'))
修改
info['age']=5
print(info)
增加 当字典中不存在这个建,就会添加
info['addr'] = '鞍山'
print(info)
删除
del info['age']
print(info)
遍历
for k,v in info.items():
    print(k,'---->',v)
获取所有键
print(list(info.keys()))
获取所有值
print(list(info.values()))
函数 面向过程
方法 面向对象
python 中的函数
def 函数名();
函数体
 def say(name):
   print('hello',name)
say('zhou')
球1到任意数之间累加和
def caculate_num(num):
    sum_num = 0
    for i in range(1,num+1):
        sum_num = sum_num + i
    return sum_num
print(caculate_num(100))
获取到网页的源代码,requests
安装requests
pip install requests
import requests
获取指定域名的源代码
response = requests.get('[图片上传失败...(image-e67e19-1577860767438)]

https://www.baidu.com')
响应状态码 200 ok 404 not fount
print(response.status_code)
响应的编码方式
response.encoding = 'utf-8'
print(response.status_code)
print(response.encoding)
获取string类型响应
html_data = response.text
print(html_data)
将爬取得文件写成本地html
文件路径,读写模式,编码方式
with open('index.html','w',encoding='utf-8') as f:
    f.write(html_data)
图片爬取
图片地址
url='[图片上传失败...(image-d1b084-1577860767438)]

http://dmimg.5054399.com/allimg/pkm/pk/22.jpg'
response2 = requests.get(url)
获取byte类型的响应
img_data= response2.content
文件路径,读写模式,编码方式
with open('kobe.png','wb') as f:
    if response2.status_code ==200:
        f.write(img_data)

你可能感兴趣的:(Python学习第二天)