Python基础篇(5)---内置函数

本章内容

   • range关键字

   • 数据类型的内置方法

range关键字  


 range方法在python2和python3中有所区分:

       在python2中range是直接产生一个列表 元素很多的情况下比较占用空间,

  在python2中有一个xrange 其实就是python3里面的range,

  在python3中range相当于哆啦A梦的口袋 不占空间但是可以取出很多数据,在python3中就只有一个range了

# 这里以Python3为例子学习range
'''
语法:range(start, stop,step)
start: 计数从 start 开始。可以不写,不写默认是从 0 开始。例如range(5)等价于range(0, 5);
stop: 计数到 stop 结束,但不包括 stop,顾头不顾尾。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
step:步长,可以不写,不写默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
'''
# 案例 
for a in range(1,10,2):
    print(a) 
# 结果是输出1,3,5,7,9

数据类型的内置方法


 查看数据类型的内置方法

可以借助于编程软件的自动提示 采用句点符快速查看。这里以“int.”为例子。

 int整型

1.类型转换
2.进制数转换

# 类型转换
res = int("1234"# 将int方法执行之后的结果赋值给变量res
print(res, type(res))  #结果输出1234 res的类型为int
"""int方法只能转换纯数字的字符串"""
# 进制数转换
print(bin(100))     # 0b1100100    二进制(0b开头)
print(oct(100))     # 0o144        八进制(0o开头)
print(hex(100))    # 0x64         十六机制(0x开头)

print(int('0b1100100', 2))   # 100  将二进制转换为10进制
print(int('0o144', 8))          # 100  将八进制转换为10进制
print(int('0x64', 16))          # 100  将十六进制转换为10进制

float浮点型

 

1.类型转换
    res = float('11.11')
    print(res, type(res))  # 11.11
    res = float('11')
# 当转换的对象为整数时候,就自动在整数后生成.0 转成浮点型
    print(res, type(res))  # 11.0
    float('abc')  # 则报错

 

字符串

1.类型转换
str可以转换所有基本数据类型
print(str(11), type(str(11))) # 结果 11 <class 'str'> print(str(11.11), type(str(11.11))) # 11.11 <class 'str'> print(str([1, 2, 3, 4]), type(str([1, 2, 3, 4]))) # [1, 2, 3, 4] <class 'str'> print(str({'name': 'jason'}), type(str({'name': 'jason'}))) # {'name': 'jason'} <class 'str'> print(str((1, 2, 3, 4)), type(str((1, 2, 3, 4)))) # (1, 2, 3, 4) <class 'str'> print(str({1, 2, 3, 4}), type(str({1, 2, 3, 4}))) # {1, 2, 3, 4} <class 'str'> print(str(True), type(str(True))) # True <class 'str'>

优先掌握的操作

1.索引取值

a= "hello world"
# 正向取(从左往右)
print(a[0])
print(a[2])
# 反向取 (负号表示从右往左)
print(a[-4])
print(a[-1])

2.切片操作

# 切片(顾头不顾尾,步长)
str1 = 'hello python!'
# 顾头不顾尾:取出索引为0到8的所有字符
str1[0:9]   # 结果  hello pyt
# 步长:0:9:2,第三个参数2代表步长,会从0开始,每次累加一个2即可,所以会取出索引0、2、4、6、8的字符
str1[0:9:2]   # 结果  hlopt 
#  反向切片
str1[::-1]  #  结果 !nohtyp olleh     -1表示从右往左依次取值

3.统计字符串中字符的个数

s1 = "hello world"
# 长度len
# 获取字符串的长度,即字符的个数,但凡存在于引号内的都算作字符
len(s1)   # 结果 11  字符串中的空格也算一个字符

4.成员运算

# 成员运算 in 和 not in
s1 = "hello world"
# in:判断hello 是否在 s1里面
print("hello" in s1)   #结果为True 
print("aa" not in s1)   #结果为True

5.移除字符串首位指定的字符(使用频率较高)

# strip移除字符串首尾指定的字符(默认移除空格)
name = "    jason    "
# 括号内不指定字符,默认移除首尾空格
name.strip()    # 结果为jason  去除了首位的空格
# 括号内指定字符,移除首尾指定的字符
s1 = "***T***"
s1.strip("*")   # 结果为T,去除了首位的*

6.按照指定的字符切割字符串

data = 'jason|123|jdb'
print(data.split('|'))  # 结果['jason', '123', 'DBJ']  按照符合|切分成列表
name, pwd, hobby = data.split('|')  # 解压赋值
print(data.split('|', maxsplit=1))  # ['jason', '123|DBJ']
print(data.rsplit('|', maxsplit=1))  # ['jason|123', 'DBJ']
"""split方法切割完字符串之后是一个列表"""

 

 

posted @ 2022-03-08 17:21  早安_1207  阅读(86)  评论(0)    收藏  举报
返回顶端