Python 小白学习之:循环语句和 list基础

  中文的ord>=128
  英文的ord<128
  
  while语句的注意事项:
    1.要控制循环的真值表达式的值来防止死循环
    2.通常用真值表达式内的循环变量来控制循环条件
    3.通常在语句内部改变循环变量

  while语句的嵌套:
    while语句本身就是语句,和其他语句一样,可以嵌套到任何的复合
    语句中
  示意:
    while 真值表达式:
        ....
        while 真值表达式2:
            ....
        else:
            ...
    else:
         ...


  示例见:
    while_embed.py

练习:(见while_zhengfangxing.py)
  输入一个整数n,打印指定宽度的正方形
  如: 
    请输入:5
  打印:	
    1 2 3 4 5
	1 2 3 4 5 
	1 2 3 4 5
	1 2 3 4 5
	1 2 3 4 5
  如:
    请输入:3
  打印:
    1 2 3
	1 2 3 
	1 2 3
	
break 语句 
问题:
  如果在循环过程中不想再继续循环语句的执行,怎么办?
  
作用:
  用来循环语句(while,for语句)中,用来终止当前循环语句的执行
说明:
  当break语句执行后,此循环语句break之后的语句将不再执行
  break语句通常和if语句组合使用
  break语句终止循环时,循环语句的else子句的语句不会执行
  break语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出
  嵌套的外重循环
  break语句只能在循环语句(while,for语句)的内部使用

示例:见break.py

死循环(一般用于不知道循环次数的时候)
  死循环是指循环条件一直成立的循环
  死循环能通常用break语句来终止循环
  死循环的else子句永远不会执行  
	
练习:(break_2.py)
让用户任意输入一些整数,当输入负数的时候结束输入,当输入完成
      后,打印您输入的这些数的和
	  如:
         请输入:1	  
	     请输入:2	 
         请输入:3	 
         请输入:4	 
         请输入:-1
		打印:10

循环语句:
  while语句
  for语句 
  
for 语句 
    作用:用来遍历可迭代对象的数据元素
	    遍历:指在计算机中经历并只经历一遍
	    可迭代对象是指能依次获取数据元素的对象
		如:
		  字符串,列表,元组,range函数返回的对象等
	语法: 
	    for 变量列表 in 可迭代对象:
		    语句块1(此处是可能重复执行的语句块)
		else:(当for 语句中可迭代对象不能提供数据的时候执行)
		    语句块2 
			else当前面不用break时,一定执行
			用break时,不会执行
	说明:
	    当在循环体内用break终止循环的时候,else子句部分的语句不会
		执行,
		else子句部分可以省略
	示例见:
	    for.py

练习:
    任意输入一段字符串:
	    1)计算出字符串中空格的个数
		2)计算出字符串中中文字符的个数
		  (注:中文 字符的编码值一定大于128,可用ord 判断)
		  
range()函数
    range(stop)  用来生成0~stop区间内的整数,
	             直到stop为止(不包括stop)
    range(start,stop[,step])  用来生成start~stop区间内的整数,
	              直到stop为止(不包括stop),每个整数间隔step
	格式详见:
	    >>>help(range)
	作用:
	    用来创建一个生成一系列整数的可迭代对象(也叫整数序列生成器)
	示意:
	    range(4)       生成 0 1 2 3
		range(3.6)     生成3 4 5
		range (1,10,2)   #  1 3 5 7 9
		range(5,0,-1)    # 5 4 3 2 1 
		range(5,0,-2)    #5 3 1
		range(4,0)       #空
    示例见:range.py

练习:
    1,打印1~20的整数,打印在一行(用for语句实现)
	2,计算1+2+3+...+99+100的和(用for和range实现)
	3,计算1+3+5+7+...+97+99的和(用for语句实现)

for语句的嵌套:
    示例:
	    for x in "ABC":
		    for y in "123":
			    print(x+y)
		#  A1 A2 A3 B1...

continue语句
    问题:
	    如何让程序不再向下执行,重新开始一次新的循环

    作用: 
	    用于循环语句(whiel,for)中,不再执行本次循环内
		continue之后的语句,重新开始一次新的循环
	说明:
	    1.在while语句中执行continue语句,将会直接跳转到while
		语句的真值表达式处,重新判断循环条件
		2.在for语句中执行continue语句,将会从可迭代对象中取下一个
		数据绑定变量后再次进行循环
	示例见:
	    continue.py

练习:
    求:1~100之间所有不能被2,3,5,7整除的数的和


循环总结:
    while语句 
	for 语句
	    字符串 str
		range()函数返回的对象
	break语句 
	continue语句

问题:
    容器
	    如何将计算机运算的数据临时存入一个地方,同时方便添加,删除
		,查看,修改,查看等操作
		
列表 list
    列表是一种容器
	列表是可以被改变的序列容器
	
创建空列表的字面值:
 L = []  # L 绑定一个新创建的空列表
 
 创建非空列表的字面值:
 L= [1,2,3,4]
 L= ["北京","上海","深圳"]
 L= [1,"二",3.14,"Four"]
 L= [1,2,[3.1,3.2,3.3],4]
 列表本身也是可迭代对象
列表的构造函数(创建)函数 list
list()     创建一个空的列表,等同于[]
list(iterable)    用可迭代对象创建一个列表
  示例:
    L = list()    # L绑定空列表
	L = list("hello")    #L绑定['h','e','l','l','o']
	L = list(range(10))   #L绑定[1,2,3,...,9]

列表的运算:
	算数运算符
		+ += * *=
	示例: 
		+ 号用于拼接列表
			x = [1,2,3]
			y = [4,5,6]
			z = x + y  # z = [1,2,3,4,5,6]
		+= 用于原列表与右侧可迭代对象进行拼接,用变量绑定列表
		语法:
			x += 可迭代对象 
		如:
			x = [1,2,3]
			y = [4,5,6]
			x += y   #  x 绑定[1,2,3,4,5,6]
			x = [1,2,3,4,5,6]
		* 生成重复列表
		*= 让原列表重复n次再用原变量绑定
			x = [1,2]*3  #  x = [1,2,1,2,1,2] 
			x = [1,2]
			x *= 2  # x = [1,2,1,2]
			
练习:
    1,输入一个整数,此整数代表三角形的直角边长
	   根据整数n打印如下四种三角形
	   请输入:3
	   打印如下:
	   1)*
	      **
		  ***
		  
	   2)  *
	       **
		  ***
		  
	   3)***
	      **
		  *
		  
	   4)***
	       **
		    *
			
	2,写一个程序,任意输入一个整数,判断这个整数是否是素数(prime)
        素数也叫质数,只能被1和自身整数的正整数
          如: 2 3 5 7 11 13 17
          提示:
               用排除法,当判断x是否为素数时,只要让x分别除以
                2,3,4,...。x-1.只要有一个能被整除,则x不是素
               数,否则就是素数
	3,输入一个正整数代表正方形的宽和高,打印如下正方形
	   如:
	     请输入5
	   打印: 
	     1 2 3 4 5
		 2 3 4 5 6
		 3 4 5 6 7
		 4 5 6 7 8 
		 5 6 7 8 9 
	    如输入3
		打印:
		  1 2 3
		  2 3 4 
		  3 4 5
			
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值