python学习_循环结构 and 类型判断
# 循环结构### 循环结构(while)- 格式```pythonwhile 表达式:语句块```> 执行流程:当程序执行到while语句时,首先判断表达式的真假。若表达式的值为真,则执行缩进的语句块,然后返回while,继续判断表达式的真假,直到表达式的值为假;若表达式的值为假,则直接跳过语句块,执行后面的代码。- 说明:- 表达式:也叫循环条件- 语句块:也叫循环体- 死循环:循环条件一直成立- break:跳出循环- continue:结束本次循环,进入下次循环- else:缩进的语句块,在循环正常退出时执行,break退出时不执行### 循环结构(for-in)- 说明:for-in也是一种循环,经常用于遍历可迭代的对象,如:字符串、列表、元组、字典等- 格式```pythonfor x in y:语句块```> 执行流程:x依次表示y中的一个元素,遍历结束循环就结束了。### 列表生成式- 可迭代对象:可以迭代遍历的对象,如:列表、元组、字典- range函数```python# 一个对象,保存了产生连续整数的算法# 可以节约空间# print(range(10))# 指定区间,默认其实值为0print(range(2, 10))# 可以遍历for i in range(10):print(i)# 可以转换成列表print(list(range(10)))```- 列表生成式```python# 列表生成式:快速生成列表# print([i for i in range(1, 11)])# print([i*2 for i in range(1, 11)])# print([i*i for i in range(1, 11)])# print([str(i) for i in range(1, 11)])print([i for i in range(1, 11) if i % 2 == 0])```### 循环嵌套- 循环能否嵌套?- 答:能- 循环嵌套示例```pythonn = int(input('请输入一个整数:'))for i in range(n):for j in range(i+1):print(j+1, end=' ')print()```> 练习:使用while实现上面的功能>> ```python> #1.使用while实现输入一个数,输出1  12  123  ....> n = int(input('请输入一个整数:'))> i = 1> while i<= n:>     i +=1>     print([s for s in range(1, i)])> ```>> ​- 列表元素排序- 冒泡排序```pythonlt = [1, 5, 7, 3, 2]# 冒泡排序:从小到大# 第一轮:1 5 3 2 7# 第二轮:1 3 2 5 7n = len(lt)# 外层循环控制比较多少轮for i in range(n-1):# 内层循环控制元素的比较for j in range(n-i-1):if lt[j] > lt[j+1]:# 通用交换元素# temp = lt[j]# lt[j] = lt[j+1]# lt[j+1] = temp# python特有的lt[j], lt[j+1] = lt[j+1], lt[j]print(lt)```- 选择排序```思想:先取出第一个元素,然后依次与后面所有的元素比较,不合适,发生交换。示例:lt = [3, 5, 2, 8, 6, 4]第一轮:2, 5, 3, 8, 6, 4第二轮:2,3,5, 8, 6, 4第三轮:2,3, 4, 8, 6, 5```> 练习:实现选择排序算法>> ```python> #先取第一个元素,然后依次与后面的所有的元素比较,不合适,发生交换> lt = [8,5,6,7,2,1,3]> n = len(lt)> for  i in range(0,n-1):>     for j in range(i+1,n):>         if lt[i] > lt[j]:>          lt[i],lt[j] =lt[j], lt[i]> print(lt)> ```>> ​### 字符串操作- 拼接与切割```pythons = 'I  love you more than I can say'# 按照指定的内容进行切割, 返回一个列表# sep:指定按照什么内容进行切割# maxsplit:指定切割次数# ret = s.split(' ', maxsplit=1)# ret = s.split()# 从右边开始切割ret = s.rsplit(' ', maxsplit=1)print(ret)s = 'Hello\nworld'# 安照换行进行切割print(s.splitlines())s = 'I love you more than I can say'ret = s.split()# 字符串的拼接s2 = '*'.join(ret)print(s2)```- 查找统计判断```pythons = 'Hi buddy, if you have something to say, than say; if you have nothing to say, than go!'# 子串查找,找到返回首次出现的位置(下标),找不到返回-1# ret = s.find('good')# 从后面开始查找# ret = s.rfind('if')# 统计次数# ret = s.count('if')# 判断是否以指定内容开头# ret = s.startswith('Hi')# 判断是否以指定内容结束ret = s.endswith('go')print(ret)```- 转换及替换```pythons = 'hello world!'# 转换为大写print(s.upper())# 转换为小写print(s.lower())# 大小写转换print(s.swapcase())# 首字母大写print(s.capitalize())# 每个单词首字母大写print(s.title())# 用指定的新内容替换就内容,不用写count,直接写数字print(s.replace('l', 'L'))```- 类型判断```pythons = 'Hello'# 是否是全大写print(s.isupper())# 是否是全小写print(s.islower())# 是否每个单词只有首字母大写print(s.istitle())# s = '123'# 是否是全数字print(s.isdecimal())# 是否全是字母print(s.isalpha())s = '123'# 是否全是数字或字母print(s.isalnum())```### 练习- 计算1~100之间所有整数的和- ```python#计算1~100之间所有整数的和i = 1sum = 0while i<=100:sum +=ii +=1print('1+2+3+...+100=',sum)#i = 0lt =[]while i <=100:lt.append(i)i+=1print(sum(lt))```​- 打印字符A~Z- ```python#2.打印字符A-Za = 65b =90for i in range(a,b+1):print(chr(i))```​- 循环输入10个字符,大写转小写,小写转大写,其它字符不变,然后输出- ```python#3.循环输入10个字符,大写转小写,小写转大写,其它字符不变,然后输出.lt = 'hello WorLd!'i = 0a = len(lt)while i<a:b = lt[i]if b.islower():print(b.upper())else:print(b.lower())i +=1```​- 将12345转换为54321- ```python#当a不为零的时候,循环条件为true,执行语句块while a :#对a求余数,第一次循环则把5求出来last = a%10#对a求余后取整,保证下一位在下一个循环被取出a=a//10#  a , last = divmod(a,10)#ret这个变量,第一次将五放在各位,第二次放在十位,依次递增。ret = ret*10 + last#打印retprint(ret)```​- 将12345转换为'12345',不要使用str- ```python#5.将12345转换为'12345',不要使用stra = 12345b = '%d' % aprint(b, type(b))```将‘12345’转化成54321```python#将’12345‘转换成 54321a = '12345'j = 0set = 0for i in a:j = j*10 + (ord(i)-ord('0'))#print(j)while j :j , last = divmod(j,10)set = last + set * 10print(set)```​- 将'12345'转换为12345,不要使用int- ```python#6.将'12345'转换为12345,不要使用ints = "12345"a = 0for x in s :a = a*10 +( ord(x)-ord("0"))print(a)```- 遍历列表,打印:`我叫name,今年age岁,家住dizhi,电话phone`- ```python#7.遍历列表,打印:我叫name,今年age岁,家住dizhi,电话phonelt = [{'name':'小王', 'age':18, 'info':[('phone', '123'), ('dizhi', '广州')]},{'name':'小芳', 'age':19, 'info':[('phone', '789'), ('dizhi', '深圳')]},{'name':'小杜', 'age':22, 'info':[('phone', '567'), ('dizhi', '北京')]},{'name':'小孟', 'age':28, 'info':[('phone', '000'), ('dizhi', '上海')]},{'name':'小乔', 'age':26, 'info':[('phone', '111'), ('dizhi', '河南')]},]for j in range(len(lt)):print('我叫{},今年{}岁,家住{},电话{}'.format(lt[j].get('name'),lt[j].get('age'),lt[j].get('info')[1][1],lt[j].get('info')[0][1]))```​```pythonlt = [{'name':'小王', 'age':18, 'info':[('phone', '123'), ('dizhi', '广州')]},{'name':'小芳', 'age':19, 'info':[('phone', '789'), ('dizhi', '深圳')]},{'name':'小杜', 'age':22, 'info':[('phone', '567'), ('dizhi', '北京')]},{'name':'小孟', 'age':28, 'info':[('phone', '000'), ('dizhi', '上海')]},{'name':'小乔', 'age':26, 'info':[('phone', '111'), ('dizhi', '河南')]},]```- 打印九九乘法表- ```python#8.打印九九乘法表for i in range (1,10):for j in range(1,i+1):print("%d*%d=%d" % (i,j,i*j),end=" ")print("")i = 1while i < 10:for j in range (i, 10):print("%s×%s=%s"%(i,j,i*j),end=" ")print()i+=1```​- 从终端输入两个整数m和n,打印m*n的表格,如:2,5,打印如下图形:- ```pythonm = int(input("请输入一个数字:"))n = int(input("请输入一个数字:"))for x in range(1,m+1):for y in range(1,n+1):print("{}".format((x-1)*n+y),end="  ")print()#m = int(input("请输入一个数字:"))n = int(input("请输入一个数字:"))s = m*nfor x in range(s):if x%n == 0:print()print(x+1, end=" ")```​```1 2 3 4 56 7 8 9 10```​

posted on 2018-09-08 16:59 liangzhiwen 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lzw19951020/p/9650032.html

python学习_循环结构 and 类型判断相关推荐

  1. python学习_循环语句

    python学习_循环语句 第1关:斐波那契数列 斐波那契数列(Fibonacci sequence),又称黄金分割数列. 因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子 ...

  2. python中用于循环结构的关键字_详解Python的循环结构知识点

    循环结构的应用场景 如果在程序中我们需要重复的执行某条或某些指令,例如用程序控制机器人踢足球,如果机器人持球而且还没有进入射门范围,那么我们就要一直发出让机器人向球门方向奔跑的指令.当然你可能已经注意 ...

  3. python程序的循环结构_四、python程序结构之循环结构

    循环结构的应用场景 如果在程序中我们需要重复的执行某条或某些指令,例如用程序控制机器人踢足球,如果机器人持球而且还没有进入射门范围,那么我们就要一直发出让机器人向球门方向奔跑的指令.当然你可能已经注意 ...

  4. 第四章 python中的循环结构

    目录 一.python中的内置函数 1. range(stop) 2.range(start,stop) 3.range(start,stop,step) 4.range的实际应用 二.python中 ...

  5. Java基础语法_循环结构【多测师_何sir】

    Java基础语法_循环结构 for 循环 while 循环 do-while 循环 Java 增强 for 循环 break 关键字 continue 关键字 for 循环 语法结构: for(初始化 ...

  6. Python教学 | Python 中的循环结构(上)【附本文代码和数据】

    查看原文:[数据seminar]Python教学 | Python 中的循环结构(上)[附本文代码和数据] (qq.com) Part1引言 上期文章我们向大家介绍了 Python 程序控制结构中的分 ...

  7. python使用循环结构计算10_十二、 python中的循环结构

    我们要计算1+2+3的时候,可以直接写出来,但是计算1+2+3+···+100的时候,就不能写了.如果计算1到1亿的和,全写出来就有点不现实了.为了让计算机能计算出1到1亿的和,这时候就需要循环结构了 ...

  8. python 学习_第五模块 DMO

    python 学习_第五模块 DMO 1. 节点 <!DOCTYPE html> <html lang="en"> <head><meta ...

  9. python ui bs_Guibs的Python学习_列表

    Guibs 的 Python学习_列表# 列表# 列表由一系列按特定顺序排列的元素组成, 其中元素和元素之间可以没有任何关系 # 在 Python 中, 用方括号 [] 来表示列表, 并用逗号 , 分 ...

  10. python练习_定义圆定义点判断关系

    python练习_定义圆定义点判断关系 定义一个点类,包括坐标x,坐标y, 定义一个圆类,包括圆点cp和半径r, 方法:1.求圆的面积:2.求圆的周长:3.判断一个实例点和实例圆的关系. import ...

最新文章

  1. poj 2728 Desert King(最小比率生成树 / 0-1分数规划 / 二分)
  2. 用户第一次登录后要求修改密码
  3. 如何使用Salt 的各种状态值
  4. 博客园Markdown模式的MATLAB代码高亮方案
  5. phpwind html5,PHPWIND 5.3 运行代码 功能实现代码
  6. Ie html button消失,input 按钮在IE下显现不一致的兼容问题
  7. VTK:图片之ImageRotate
  8. Android之BroadcastReceiver 监听系统广播
  9. postgresql常用函数及操作符及类型转换
  10. 鸿蒙硬件HI3861开发环境搭建
  11. Mysql-savepoint
  12. innobackupex: ibbackup failed at /usr/bin/innobackupex line 2560.
  13. 如何成为一个C++高级程序员
  14. python的快捷键总结
  15. android 渠道排名,安卓APP渠道效果统计***排名
  16. php array_sli ce,JavaScript Array --map()、filter()、reduce()、forEach()函数的使用
  17. 华为手机设置信息服务器地址,手机设置里服务云服务器地址
  18. 计算机教师知识老化,【计算机教学论文】技校计算机教学分析(共2800字)
  19. android手机功能创新,盘点最让人心动的五大手机差异化创新趋势
  20. 华为手机硬改拉新_华为手机硬改拉新_快看|华为正式发布车载智慧屏,售价1699元...

热门文章

  1. 7类数据分析常见的统计陷阱,快来排雷!
  2. 数据分析从入门到进阶,35本包邮送到家
  3. 从技术到求职,强烈推荐一下这9个牛逼的公众号
  4. 99.9%的数据分析师,都做不到这些
  5. 都昌时间轴控件功能说明
  6. Can't use function return value in write context 使用empty遇到报错
  7. Jquery基础笔记
  8. C#语句之while语句
  9. CUBRID学习笔记 21 查看主键外键索引
  10. OC--Protocol 协议