1.循环
继上一篇文章,我们把另外一种循环体(while循环)学习一下,下面我们来看一个小例子:
index =1
while index < 10 :
index += 1
if index == 4 :
# break 后面的循环不执行
# continue 当次循环不执行,后面的循环继续执行
pass
#当前位置没有东西可写,为了防止代码报错,使用pass进行占位,
# pass无任何意义
print(index)
相信大家通过上面的代码已经了解到while循环的用法,下面让我们用两段代码来看看while和for的区别:
for x in range(18) :
x+=1
print('x={}'.format(x)
while age <18 :
print('未成年,今年{}岁'.format(age))
age+=1
总结:for循环重点在于循环的次数但while重点在于循环的条件。for循环能做的东西while都能做,反之就不行,绝大部分情况下,我们用for。
2.占位符的使用
下面让我们来学习一些新的知识:占位符。Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。下面让我们来看一个例子:
name = '张三'
age = 17
height = 1.78
print('我的名字%s,我的年龄是%d岁,我的身高是%f米' % (name,age,height))
python字符串格式化符号:
符 号 | 描述 |
---|---|
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
%e | 用科学计数法格式化浮点数 |
%E | 作用同%e,用科学计数法格式化浮点数 |
%g | %f和%e的简写 |
%G | %f 和 %E 的简写 |
%p | 用十六进制数格式化变量的地址 |
3.字符串的操作
今天,我们来看一下字符串有哪些操作:
info = '今天是星期四 hello world'
print(info[7])
# 获取制定内容,切片操作
# 值1开始位置(包含开始位置)
# ,值2结束位置(不包含结束位置)
print(info[3:5])
# IndexError: string index out of range
# 索引错误:字符串索引超出范围
# print(info[100])
# 当范围超出边界的时候,直接获取从指定位置到字符串结束的部分
print(info[3:100])
info= '2018七月七我在智游吃汉堡'
# 获取从指定位置到结束位置的内容
print(info[3:])
# 反序截取字符串
print(info[:-3])
# 获取字符串整个的内容
print(info[:])
num = '-10000'
if num. isdigit() :
num = int(num)
else:
num= num[1:]
num = int(num)
print(num)
# 晚上作业:
# '-123abc567' 转化数字123567
# 截取到123567
# --------------find------------
content = '张三李四王二麻子'
result = content.find('王二')
# find用法解释:
# 返回S的最低索引,在那里找到子串子,
# 这样的子句包含在S开头:结尾。可选
# 参数的开始和结束被解释为切片表示法。
# find()从左向右寻找子序列的位置,
# 如存在多个相同子序列只返回第一个查找到的位置,如果子序列不存在返回-1
print(result)
if result == -1 :
print('不存在')
else:
print('存在')
# --------------------------
info= '好好学习,天天向上'
# 在整个索引里面发现
result=info.index('学习')
# index()从左向右寻找子序列的位置,如果子序列不存在报错
# ValueError: substring not found
# 在序号5到7下发现
# result=info.index('学习',5,7)
print(result)# -------------startswith-------------
# -------------count-------------
info= '好好学习,天天向上'
# 总数
# 获取指定子元素的个数
result=info.count('学习')
print(result)
# -------------replace-------------
info= '程序猿,设计师,工程师'
# replace 代替,替换
# 值1:旧值
# 值2:新值
info=info.replace(',','/')
print(info)
# -------------split-------------
url = 'https://ss1.baidu.com/6ONXsjip0QIZ8tyhnq/it/u=2300875363,445064071&fm=5'
print(url[21:])
# split 分割
result=url.split('/')
print(result)
# -------------capitalize和title-------------
info= 'hello world'
# 首字母大写 capitalize
print(info.capitalize())
# title 全部首字母大写
print(info.title())
url = 'taobao.com'
# 如果url不是以XXX开头
if not url.startswith('https://www'):
url = 'https://www.' + url
print(url)
name = '小明'
# 如果url不是以XXX结尾
# not不是必须要和if组合在一起的
if not name.endswith('haha'):
name = name + 'haha'
print(name)
# -------------lower和upper-------------
info = 'Hello World'
# 全部变成小写
info = info.lower()
print(info)
# 全部变成大写
info = info.upper()
print(info)
# -------------maketrans和translate-------------
message= '领导近日来智游参观并作出重要指示'
# 指定规则
s = str.maketrans('智游','某游')
# translate 翻译 根据指定规则转化
print(message.translate(s))
4.列表
everybody,今天,我们一起来见识一个基础中重要的部分:列表。
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
list1 = ['Google', 'Runoob', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
好的,下面我们来玩一下列表:
list4 = [['hello','123'],['541541'],['154577']]
print(list4[0])
list = ['张三','李四','王五','赵六']
# append:追加,新添加的默认添加在最后一位
list.append('冯七')
print(list)
# insert:插入,插入的东西在前面
# 值1:插入的位置
# 值2:插入的内容
list.insert(0,'小二')
# 如果插入的位置超出了列表的长度,那么就插入到最后一位
list.insert(100,'大神')
print(list)
list.append('张三')
print(list)
# remove方法,默认将列表里面的元素从左往右依次删除
list.remove('张三')
print(list)
# pop弹出最后一个元素
list.pop()
print(list)
# 弹出指定序号的元素
list.pop(2)
print(list)
if '冯七' in list :
print('在')
else:
print('不在')
index = list.index('冯七')
print(index)
list[0]='阿三'
print(list)
# 值1:开始位置,包括开始位置
# 值2:结束位置,不包括结束位置
print(list[1:])
# 值三:增量
print(list[1:4:3])
# 倒序
print(list[::-1])
print(list[::2])
print(list[1::2])
print(len(list))
print(len('bauydfastud'))
# 分别获取每一个人:
for x,y in list:
print(x,y)