美文网首页
day4循环和分支

day4循环和分支

作者: Smilebest | 来源:发表于2018-08-23 22:57 被阅读17次

一、数据类型转换

1.数据类型自动转换

a = 10                    整型(in)
b = 12.5                  浮点型(float)
result = a + b            会自动将a转换成浮点型,再计算
print (type(result))

result2 = a + True        会自动将布尔型转换成1
print (result2,type(result2))

运行

<class 'float'>
11 <class 'int'>

2.强制转换

  • 基本语法:类型名(需要转换的数据)
a.将其他数据转换成int型:浮点型、布尔和部分字符串
print (int(12.5))        float--->int:去掉小数点和小数点后面的数
print (int(True),int(False))    bool--->int: 1   0

运行

12
1 0
  • 去掉字符串的引号后,字符串的内容本身就是一个整数的时候,才能被转换成整型
print (int('123'))
print (int('-123'))
print (int('122.5'))     错误
print (int('123a'))      错误

运行

123
-123
b.将其他的数据类型转换成flaot类型:整数、布尔和部分字符串
print (float(10))             i
nt---->float:在整数后加.0
print (float(True))           bool--->float:True:1.0,False:0.1
  • 去掉括号后,字符串的内容本身就是一个整数或者浮点数的时候,才能被转换成浮点型
print (float('2e3'),float('-12.3'),float('10'))
c.将其他数据类型转换成bool:
  • 所有的数据类型都可以转换成bool

  • 数字中:除0是False,其他都是True

  • 字符串中:除了空串是False,其他都是True

  • 总结:所有为空、为0的值全是False,否则就是True

print (bool(1),bool(-1),bool(1.1),bool(-1.25))
print (bool(0),bool(0.0))
print (bool(None),bool([]))
d.其他数据类型转换成字符串,转换的时候就是在数据外面加引号
print (str(100),str(1.2),str(True),str([1,2,3]))

二、if语句

python中的分支结构只有一种:if分支结构

1.if

语法:
if 条件语句:
——执行语句块
其他语句

说明:

  • a.if:python中的关键字,‘如果’的意思,用来做判断的

  • b.条件语句:最终结果会转换成布尔值

  • c.冒号:冒号是固定语法,必须写!

  • d.执行语句块:可以是多行语句,但是每行语句必须和前面的if保持一个缩进(一个tab/制表符)

  • 执行过程:先判断条件语句的结果是否为True,如果是就执行冒号后面的语句块。否则,直接执行if模块后的其他语句

练习:用一个变量保存一个学生的成绩,要求:大学生
     成绩大于90的时候,打印优秀,无论成绩多少,都打印
grade = 100
if grade > 90:
    print('优秀')
print ('%d' % (grade))

2.if——else

语法:
if 条件语句:
——执行语句块1
else:
——执行语句块2
其他语句

说明:

  • else:关键字(else后边的冒号不能省)
  • 执行过程:先判断条件语句的结果是否为Ture,如果是就执行语句块1,然后再执行其他语句; 如果为False,就执行语句块2,然后再执行其他语句
age = 20
if age >= 18:
    print ('成年')
    print ('可以进网吧')
else:
    print ('未成年')

3.if_elif_else

语法:
if 条件语句1:
——语句块1
elif条件语句2:
——语句块2
elif 条件语句3:
——语句块3
。。。
else:
——语句块
其他语句

+要求成绩大于90分打印优秀,80-90打印良好,60-79打印及格,60以下不及格
grade = 80
if grade > 90:
    print ('优秀')

elif grade >=80:
    print ('良好')

elif grade >=60:
    print ('及格')

else:
    print ('不及格')
 练习
age = 20
if age >= 18:
    print ('成年')
    print ('可以进网吧')
else:
    print ('未成年')

4.if语句的嵌套

  • 每个if分支中都可以嵌套其他的if语句
    if 条件1:
    ——执行语句1
    ——if 条件2:
    ——执行语句2
    ——else:
    ——执行语句3
    else:
    ——执行语句4
成绩和年龄:如果成绩大于90并且年龄是18以上 就获奖100万;
              年龄小于18岁,就获取奖金200万
              成绩小于90,打印没有奖金
grade = 90
age = 18
if grade >= 90:
    if age >=18:
        print ('100万')
    else:
        print ('200万')
else:
    print ('没有奖金')

+练习:产生一个随机数(0-100),判断随机数是否是偶数,如果是打印偶数,否则打印奇数;如果能被4整除,再打印能被4整除

import random
number = random.randint(0,100)
print ('随机数是:%d' % (number))
if number % 2 == 0:
    print ('偶数')
    if number % 4 == 0:
        print ('能被4整除')
else:
    print ('奇数')
  • 补充:
  • import是python中导入模块或者模块中内容的关键字
    random是python内置的产生随机数模块
import random
number = random.randint(10,20)    产生一个10到20的随机数,并且存到number中
print (number)

三、条件语句的简写

  • 判断一个数是否是偶数的两种写法
number = 10
if number %2 == 0:
   print ('偶数')
  • 推荐
if not number %2 :
    print ('偶数')

if number %2:
    print ('奇数')
  • 判断一个字符串是否是空串
str1 = 'abc'
if str =='':
    print ('空串')
else:
    print ('不是空串')
  • 推荐
if str:
    print ('不是空串')
else:
    print ('是空串')

四、for的循环

  • 在完成某个功能的时候,如果需要重复某个操作,就可以使用循环
  • python中的循环结构:for循环和while循环
1.for循环的结构:

for 变量名 in 序列:
——循环体

说明:

  • a.for:关键字

  • b.变量名:和声明变量时的变量名的要求一样

  • c.in:关键字

  • d.序列:容器(数据本身是有多个数据组成),例如:字符串、列表、字典、元祖、range、生成式和生成器

  • e.循环体:需要重复执行的代码

  • 执行过程:让变量去序列中一个一个取数据,取完为止。每取一次数据,执行一次循环体

for x in ('123'):
    print (x)
  • range函数是python中内置函数,作用是产生指定范围中的数字
  • xrange是python2中的函数,python3中用range来代替
    ****range(N):产生0~N-1的所有整数
    ****range(N,M):产生N~M-1的所有整数
    ****range(N,M,step):产生从N开始,每step产生一个整数,到M之前
print ('==========')
for x in range (10):
    print (x)

print ('==========')
for n in range (10,15):
    print (n)

print ('=========')
for x in range (1,11,2):
    print (x)
  • 练习:计算1+2+3+。。。+100
number = 0
for x in range (1,101):
    number += x
    print (number)

+ 练习:统计1~1000中能够被三整除的数的个数

ste = 0
for x in range (1,1001):
    if x %3 == 0:
        print ('%d 可以被三整除' % (x))
        ste += 1
print ('1~1000中能被三整除的个数:%d' % (ste))
  • 注意:for 循环中用来获取序列值的变量,在循环体不是一定要使用. 如果不用,那么变量名可以声明为_
    打印50行"***"
for _ in range(50):
    print ('***')
  • 1~10000中能被5整除的个数
sum = 0
for x in range (1,10001):
    if x %5 ==0:
        sum += 1
print ('1~10000中能被5整除的数的个数是:%d' % (sum))
 (1,200)     7     个数

dob = 0
for x in range (1,201):
    if x %7 == 0:
        dob += 1
print (dob)

五、while循环

QQ截图20180823160402.png
1.结构:

while 条件语句:
循环体

2.说明:

while: 关键字
条件语句:结果是True或者False
循环体:要重复执行代码

3.执行过程:
判断条件语句的结果是否为True,如果为True就执行循环体,执行完循环体再判断条件语句是否为True。。。。。,直到结果为False为止
 1+2+3+...+100
n = 0
x = 1
while x <= 100:
    n += x
    x += 1
print (n)
x = 1,n = 0
1 <= 100   True;n += x  0+1=n;x+=1  1+x=2
x = 2,n = 0+1
2 <=100    True;n=0+1+x=0+1+2;x=1+x=3
。。。
x = 100,n = 0+1+2+...+99
x <= 100   True;n=0+1+。。。+100;x=1+x=101
  • 练习:循环结束,x的值和n的值,分别是多少 x = 6, n = 2+3+4+5+6
x = 1
n = 0
while x <= 5:
    x += 1
    n += x
print (n,x)

for 循环与while循环的比较
**for循环的循环次数是有限的,并且是确定的;while循环的循环次数不确定
** for循环:1.遍历序列中的值 2. 循环次数确定
**while循环:1.死循环 2.循环次数不确定

  • 练习:找大于10000的数中,第一个能够被23整除的数
x = 10001
while x %23 != 0:
    x += 1
print (x)

相关文章

  • day4循环和分支

    一、数据类型转换 1.数据类型自动转换 运行 2.强制转换 基本语法:类型名(需要转换的数据) a.将其他数据转换...

  • Day4—循环和分支

    1 数据类型的转换 数据类型转换即为int(整型)、float(浮点型)、bool(布尔型)、str(字符串型)等...

  • Day4 循环和分支

    if 2.强制转换 1.其他的数据类型转换成整型:int()浮点型:只保留整数部分布尔类型:True -> 1 ...

  • day4 循环和分支

    if语句 结构: 1. if 条件语句:条件语句为True执行的代码块 执行过程:先判断条件语句是否为True,如...

  • day4循环和分支

    01-if语句 1、if语句结构: 执行过程:先判断条件语句是否为True,如果为True就执行if语句后面:后面...

  • Day4 分支和循环

    一、分支结构 在Python中的分支结构只有if语句 1.if语句 1)结构1: 满足某个条件才执行某段代码 a....

  • 9.28 day4循环和分支

    2.if语句 代码都是从上往下 一开始导入一个模块/包的关键字: 1.if就是在程序中用来做判断的(需要在满足某个...

  • Day4 分支结构和循环

    一、分支结构-if python中的分支结构中只有if语句,没有switch。 1、什么时候用if语句 如果做某些...

  • 循环和分支

    分支 if 分支 else通过缩进来匹配if,等价于: 条件表达式 a = x if 条件 else y 断言 a...

  • 循环和分支

    循环结构 分支结构 break和continue对比 break:终止循环,循环中后面的代码不再执行continu...

网友评论

      本文标题:day4循环和分支

      本文链接:https://www.haomeiwen.com/subject/xcomiftx.html