1.while循环
while 条件( ):
条件满足时,做的事情1
条件满足时,做的事情2
i = 1
while i < 3:
i+=1
print 'hello'
定义死循环
> while True:
> print 'hello python
计算1-100之间数字的和
while i <= 100:
.每次循环都让result这个变量和i这个计数器相加
result += i # result = result + i
# 处理计数器
i += 1
print '0~100之间的数字求和的结果是 %d' %result
计算0~100之间所有偶数的累积求和
i = 0
result = 0
while i <= 100:
if i % 2 == 0:
print i
result +=i
i += 1
print '0~100之间的偶数累加的结果是 %d' %result
计算0~100之间所有奇数的累积求和
i = 0
result = 0
while i <= 100:
if i % 2 != 0:
print i
result +=i
i += 1
print '0~100之间的奇数累加的结果是 %d' %result
2.break,continue
break:
某一条件满足的时候,退出循环,不再执行后续重复的代码
在循环体内部,我们可以增加额外的条件,在需要的时候,跳出整个循环
i = 0
while i <10:
if i == 3:
break
print i
i +=1
print 'over'
continue
某一条件满足的时候,不执行后续重复的代码,其他条件都要执行
代码遇到continue关键字的时候继续到循环的那一条语句中去
while i < 10:
i +=1
if i == 3:
continue
#i += 1
print i
while嵌套
在控制台连续输出五行*,每一行星号的数量依次递增
row = 1
while row <= 5:
# 每一行要打印的星星就是和当前行数是一致的
# 增加循环,专门负责当前的行中,每一列的星星显示
# 1.定义一个列计数器
col = 1
# 2.开始循环
while col <= row:
#print '%d' % col
# 不换行输出
print '*',
col += 1
# print '*'
#print '第 %d 行' % row
# 这行代码的目的,就是在一行小星星输出完成后,添加换行
print ''
row += 1
2.for循环
for 循环使用的语法
for 变量 in range(10):
循环需要执行的代码
for i in range(5):
print i
```
**求1~100之间的所有偶数之和**
sum = 0
for i in range(2,101,2):
**求1~100之间的所有奇数之和**
sum1 = 0
for i in range(1,101,2):
sum1 += i
print sum1
######用户输入一个整型数,求该数的阶乘
num = int(raw_input(‘Num:’))
res = 1
for i in range(1,num+1): # num:3 rang(1,4)== 1,2,3
res = res * i
print ‘%d 的结果是:%d’ %(num,res)
用户登陆程序需求:
1. 输入用户名和密码;
2. 判断用户名和密码是否正确? (name='root', passwd='westos')
3. 为了防止暴力破解, 登陆仅有三次机会, 如果超过三次机会, 报错提示;
for i in range(3):
name = raw_input(‘用户名:’)
passwd = raw_input(‘密码:’)
if name == ‘root’ and passwd == ‘westos’:
print ‘登陆成功’
break
else:
print ‘登陆失败’
print ‘您还剩余%d次机会’ %(2-i)
循环执行结束后执行的代码
else:
print ‘登陆次数超过三次,请等待100s后再次登陆’
输入两个数值:
求两个数的最大公约数和最小公倍数.
最小公倍数=(num1*num2)/最大公约数
num1 = int(raw_input(‘Num1:’))
num2 = int(raw_input(‘Num2:’))
min_num = min(num1, num2)
for i in range(1, min_num + 1):
if num1 % i == 0 and num2 % i == 0:
# 当循环结束,保存最大公约数
gys = i
lcm = (num1 * num2)/gys
print ‘%s和%s的最大公约数为%s’ %(num1,num2,gys)
print ‘%s和%s的最小公倍数为%s’ %(num1,num2,lcm)
**3.字符串判定**
title:标题 判断某个字符串是否为标题(第一个首字母大写,其余字母小写)
print ‘Hello’.istitle()
print ‘HeLlo’.istitle()
判断字符串里面的每个元素是否为什么类型
print ‘123’.isdigit()
print ‘123abc’.isdigit()
找出字符串是否以XXX结尾
print s.endswith(’.png’)
url1 = ‘http://www.baidu.com’
url2 = ‘file:///mnt’
print url1.startswith(‘http://’)
print url2.startswith(‘f’)
split对于字符串进行分离,分割符为'.'
s = ‘172.25.254.250’
s1 = s.split(’.’)
print s1
date = ‘2018-8-27’
date1 = date.split(’-’)
print date1
连接
print ‘’.join(date1)
print ‘/’.join(date1)
print ‘/’.join(‘hello’)
find找到字符串 并返回最小的索引
s = ‘hello world’
print s.find(‘hello’)
print s.find(‘world’)
print s.replace(‘hello’,‘westos’)
**索引**:
0,1,2,3,4 索引值是从0开始
s = ‘hello’
print s[0]
print s[1]
**切片**
print s[0:3]
切片的规则:s[start?step] 从start开始到end-1结束,步长:step
print s[0:4:2]
显示所有字符
print s[:]
显示前3个字符
print s[:3]
对字符串倒叙输出
print s[::-1]
除了第一个字符以外,其他全部显示
print s[1:]
**重复**
print s * 10
**连接**
print 'hello ' + 'world'
**成员操作符**
print ‘q’ in s
print ‘he’ in s
print ‘aa’ in s
**字符串的统计.**
print 'helloooo'.count('o')