Python学习总结【连载】(三)

Python学习总结【连载】(三)

2018.06.14 Juttachen


概述

+ 10 数据类型转换

+ 11 if 判断

  • 格式与执行过程
  • input 语句
  • pass 语句

+ 12 for 循环

  • 格式与执行过程
  • range语句

+ 13 while 循环

  • 格式与执行过程

十、数据类型转换

1.将其他的数据转换成数字

int():将其他的数据转换成int类型的数据

    num = 12.56
    print(int(num))  #将浮点数转换成整数(直接去掉小数部分)

    bool1 = True
    print(int(bool1)) #将布尔值转换成整数,真1假0

    str1 = '123'
    print(int(str1)) # 将纯数字整型字符串可以直接转化成整型数字

注意:int()转换字符串的时候,不是纯数字会报错,不是整型数字也会报错。

float() 可以将其他数据转换成浮点型数据.和整形相似。

2.把其他数据转换成布尔值

bool() 可以将其他数据转换成布尔值:非零数是True,只有0是False,字符串里面除了空串转换成布尔会变成False以外,其他的都是True。

    print(bool(12))
    print(bool(-12))
    print(bool(12.5))
    print(bool(0))
    print(bool('abc'))
    print(bool('')) #空串是False

3.其他数据转换成字符串

str() 将其他数据转换成字符串。所有的数据类型的数据都可以转换成字符串。

注意:

可以在if或者while循环后的条件语句里面只写数字或字符串,和数据类型相关,见其他类型转换为布尔值情况。

    if 10:
        print('aaa')

判断一个字符串是否是空串,如果不是就直接打印这个字符串,否则输出空串

    str1 = ''
    if str1:
        print(str1)
    else:
        print('空串')

十一、if 判断

1. 格式与执行过程

基本格式:

    if  条件语句1:
        执行语句块1
    elif 条件语句2
        执行语句块2
    else:
        执行语句块3

    其他语句

执行过程:
先判断条件语句1是否为True,如果为True,就去执行语句块1中,整个条件结果就执行完了,如果是False,执行判断条件语句2,执行语句块2,再执行其他语句,如果False则直接执行语句块3。
条件语句只能有一个语句块被执行

常用形式

    if 条件语句:
        执行语句块

判断条件语句的值是否为True,如果为True,执行语句块,False执行下面的其他语句。

例子:判断年龄
要求:判断年龄是否大于18,如果大于18输出成年人

    age = 12
    if age > 18:
        print("成年人")

练习:判断一个数是否是偶数,是的打印‘xxx是偶数’

    num = 23
    if num % 2 == 0:
        print('xxx是偶数')

第二种常用形式

    if  条件语句1:
        执行语句块1
    else:
        执行语句块2

判断条件语句是否为True,如果为True,就执行语句块1,否则执行语句块2.

判断一个数是否是偶数,是的打印‘xxx是偶数’,不然就打印‘xxx是奇数’。

    if num % 2 == 0:
        print('%d是偶数'%(num))
    else:
        print('%d是奇数'%(num))

练习:输入一个数,如果这个数大于10就输出他的二倍值,否则输出这个数的二次幂

    num = 2
    if num > 10:
        num = num * 2
        print(num)
    else:
        print(num**2)

2. input 语句

input():从控制台获取键盘输入的一个字符串,以回车结束。
也就是说:程序执行到input函数的时候,程序就会停下来,等待用户从键盘输入并且以回车结束,然后才会往下执行。

    inputvalue = input("请您输出数:")
    print(inputvalue)
    print(type(inputvalue))
    new_value = int(inputvalue)     # input()默认输出是字符串类型,要按要求转换成各种类型。比较预算符合和+,*,在运算的时候,两边都可以是数字,或者都是字符串,但不能一边是字符串一边是数字。
    if new_value > 10:
        num = new_value * 2
        print(num)
    else:
        num = new_value ** 2
        print(num)

第三种常用形式
elif 可以按情况写很多很多个
练习:成绩分类
判断成绩是
优秀(90-100)
良好(80-89)
中等(60-79)
不及格(60以下)

    grade = 90
    if 0 <=grade < 60:
        if grade < 0:
            print('成绩有误')
        else:
            print('不及格')
    elif grade < 80:
        print('中等')
    elif grade < 90:
        print('良好')
    elif grade <= 100:
        print('优秀')
    else:
        print('成绩有误')

练习:年龄判断
婴儿(0-1岁)、儿童(2-4岁)、少年(5-12)、青年(13-18)
成年(19-40),中年(41-60),老年(60-)

    age = input()
    int_age = int(age)
    if int_age < 2:
        if int_age > 0:
            print('婴儿')
        else:
            print('错误')
    elif int_age < 5:
        print('儿童')

    elif int_age < 13:
        print('少年')

    elif int_age < 19:
        print('青年')

    elif int_age < 41:
        print('成年')

    elif int_age < 61:
        print('中年')

    else:
        print('老年')

3. pass语句

pass:占位,防止因为没有写块结构而出现。

    if age == 10:
        pass

十二、for 循环

1.格式与执行过程

python中的for循环只有for-in循环
格式:

    for 变量名 in 列表:
        循环体

执行过程:使用变量去依次获取列表中的数据直到获取完为止;
每获取一个数据,执行一次循环体。

循环次数:由列表中的数据的个数决定
例子
去获取字符串中每一个字符

    str1 = 'abcdefjsajikldjfpjapifosiorekdljs'

    for char in str1:
            print(char)
    # 去统计一个字符串中’a‘出现的次数
    num = 0
    for char_a in str1:
        if ord(char_a) == 97:
            num = num + 1
    print(num)

    # 其他做法
    count = 0
    for char in str1:
        if char == "a":
            count += 1
    print(count)

2.range语句

range函数: 可以生成一个数值范围
用法1: range(n), 生成0~(n-1)的值

    print(range(10))
    for x in range(10):
        print(x)

用法2:range(m,n),生成 m ~ (n-1)的数

    for x in range(2,10):
        print(x)

    # 打印1-100
    for x in range(1,101):
        print(x)
    # 打印0-100之间所有的偶数

    num = 0
    for x in range(101):
        if x % 2 == 0:
            print(x)

用法3: range(m,n,step):从m开始每step取一个数,取到(n-1)为止
step:步数

    for x in range(1,101,2):
        print(x)

例子
不通过字符串相乘,打印10遍‘=’
注意:编程规范:如果循环中的变量取到的值没有意义,循环只是单纯的控制次数,这个时候for后面的变量名一般都用“_”代替

    for _ in range(10):
        print("=",end='')

求1+2+3+...+100

    sum1=0
    for x in range(101):
        sum1 += x
    print(sum1)

求10!

    num1 = 1
    for x in range(1,11):
        num1 *= x
    print(num1)

十三、while 循环

1. 格式与执行过程

格式:

    while 条件语句:
        循环体

执行过程:
判断条件语句结果是否为真,如果为真就执行一次循环体。
执行完后再次判断条件语句是否为真,为真的话又执行循环体。
重复这个过程,直到条件语句结果为False.

例子
打印1-100

    x = 1
    while x <= 100:
        print(x)
        x += 1

计算1+2+3+...+100
看代码,一句一句读,看逻辑,一定要写出来那些变量的变化。

    x = 1
    num = 0
    while x <= 100:
        num += x
        x +=1 #num = num + 1
    print(num)

求1-100中所有偶数的和(while循环)

    x =0
    sum1 = 0
    while x <= 100:
        sum1 += x
        x += 2
    print(sum1) 

    # 第二种方法
    num = 0
    sum1 = 0
    while num <= 100:
        if num % 2 == 0:
            sum1 += num
        num += 1
    print(sum1)

你可能感兴趣的:(Python学习总结【连载】(三))