Python基础学习笔记(5)

01-循环中的关键字


"""

for 变量 in 序列:

    循环体


序列:字符串,列表,字典,元祖,集合,迭代器,生成器,range

while 条件语句:

    循环体

三个关键字: break, continue, else

"""

# 1.continue

"""

continue是一个关键字,只能写在循环体中;

当执行循环体的时候遇到continue,就结束当次循环(不再执行循环体后面的其他语句),

直接进入下次循环的判断(for循环就让变量去取下一个值;while循环就直接判断条件语句是否为True)

"""

for x in range(5):

    print('111')

    print('222')

    continue

    print('333')

    print('4444')

number = 1

while number < 5:

    print('aaaa')

    number += 1

    continue

    print('bbbb')

# 计算1+3+5+...+99

sum1 = 0

for x in range(1, 100):

    if x & 1 == 0:

        continue

    sum1 += x

print(sum1)

# 2.break

"""

break是一个关键字,只能用在循环体,用来结束循环

当执行循环体的时候,遇到了break,那么整个循环直接结束。

"""

print('============')

for x in range(100):

    print(x)

    print(x*2)

    break

print('~~~~~~', x)

number = 1

while number < 10:

    print(number)

    number += 1

    break

print(number)

# 不断输入数字,直到输入的数字是10为止

while True:

    number = int(input('请输入数字:'))

    if number == 10:

        break

# 3.else

"""

python的循环结构中可以添加else。else不会影响循环的执行过程

a. for - else

for 变量 in 序列:

    循环体

else:

  代码段


b.while - else

while 条件语句:

    循环体

else:

    代码段


else中的代码段在循环自然死亡后才会执行。

如果循环是因为遇到break而结束,那么else后面的代码段不会执行

"""

for x in range(5):

    print(x)

    break

else:

    print('for循环结束')

numer = 1

while True:

    print('====')

    numer += 1

    if numer == 10:

        break

else:

    print('while循环结束')

02-认识字符串

"""

1.什么是字符串

字符串(str): python中通过单引号或者双引号括起来的字符集对应的类型就是字符串类型。

            字符串输入不可变的序列

字符:字符指的字符串中的每个单元(元素)。python中没有字符类型,只有字符概念

"""

'abc'

'123'

"123"

'1hu'

'%^djjs'

'是否就不能'

'b'

str1 = 'abc123'

print(id(str1))

str1 = 'aac123'

print(id(str1))

"""

2.字符串编码

python中字符串中的字符采用的Unicode编码

问题:计算机只能存数字(数字的补码),那么怎么将字符串存到计算机中呢?

答:给每一个字符一个固定的数字值,存字符的时候就存字符对应的数字(对应的数字就是对字符的编码)

每个字符和其固定的数字的一一对应关系就编码表(ASCII表,Unicode编码表)

ASCII表:只对数字、字母和一些符号进行了编码(用一个字节对字符进行编码)

Unicode编码表: 包含ASCII码,几乎包含世界上所有的语言符号(能够编码65535个字符)

中文编码值范围:0x4E00  ~ 0x9FA5

"""

# 注意:可以在字符串中通过在一个4位的16进制数前加\u来表示16进制数编码字符

print('=====', '\u4e00')

'你好,abc'

# chr(编码值) ->  将Unicode码转换成字符

print(chr(97))

print(chr(53748))

print(chr(0x4E89))

# ord(字符) - 获取字符的编码值

"""

注意:参数只能是长度是1的字符串

"""

code = ord('余')

print(code, hex(code))

# 输入一个字符串,判断字符串中是否有中文

"""

input函数返回的结果就是字符串类型

"""

value = input('请输入:')

# print(type(value))

for char in value:

    # print(char)

    if 0x4e00 <= ord(char) <= 0x9fa5:

        print(char, '是中文!')

"""

3. 转义字符

在字符串中可以通过在特定的字符前加\来表示一些特殊功能或者是特殊意义的字符

\n - 换行

\t - 一个缩进

\' - 表示一个单引号

\\ - 表示一个反斜杠字符

\" - 表示一个双引号

python中可以在字符串的最前面加r/R来阻止转义

"""

str1 = "a\\na\tb\"c\n12\'3"

print(str1)

print('============')

str1 = r"a\\na\tb\"c\n12\'3"

print(str1)

03-获取字符

"""

字符可以看成是一个容器,容器中的内容就是一个一个的字符

"""

# 1.获取单个字符

"""

字符中的每个字符都对应一个下标,下标是字符串中字符位置的标志

语法:

字符串[下标]

说明:

字符串 - 可以是字符串常量,也可以是字符串变量

[] - 固定写法

下标 - 又叫索引,范围是:0 ~ 字符串长度-1;-1 ~ -字符串长度

"""

str1 = 'he\nllo Python'

print(str1[1], str1[-12])  # 注意:一个空格算一个字符; 一个转义字符也是一个字符

print(str1[5], str1[-8])

# 2.遍历字符

"""

可以通过for循环,将一个字符串中的每个字符依次取出

for 变量 in 字符串:

    循环体

"""

for char in str1:

    print(char)


Practice


推荐阅读更多精彩内容