基本的数据类型和内置方法01

整型

用途:一般用于定义整型,比如年龄,身份证号,QQ号

定义方式

age = 18    # age = int(18)

常用方法:数学计算,进制转换

print(bin(100))     # 十进制转二进制
print(oct(100))     # 十进制转八进制
print(hex(100))     # 十进制转十六进制
print(int('1100100', 2))    # 十进制转换任何类型,int('需要转换的十进制数',类型)

有序or无序:无序

可变or不可变:不可变

值变id不变的是可变类型

值变id也变的是不可变类型

存一个值or多个值:存一个值

 

浮点型

用途:用于记录小数,身高,体重,薪资等

 定义方式:

height = 1.0    # height = float(1.0)

常用方法:数学计算

类型总结:无序,不可变,存一个值

 

字符串

用途:用于存储一些描述性的信息,爱好,名字,性别

定义方式:

# 1、单引号
s1 = '大象'
# 2、双引号
s2 = "大象2"
# 3、三单引号/双引号
s3 = '''大象3'''
s4 = """大象4"""
print(s1)
print(s2)
print(s3)
print(s4)
# 以上三种方式没有任何区别,但不能混用
# 可以嵌套,比如内单外双,内双外单这样的
s5 = '我喜欢"大象"'
print(s5)
# 字符串前加一个小写的r,代表转义,转义为字符串
s6 = r"我喜欢'大象'1.234"
print(type(s6))

打印结果:
大象
大象2
大象3
大象4
我喜欢"大象"
<class 'str'>

优先掌握知识点***

1、索引取值(正向取、反向取),只能取不能存

s1 = 'hello world'
print(s1[1])    # 正向取字母e
print(s1[-10])  # 反向取字母e

打印结果:
e
e

2、索引切片:截取字符串中的一小段字符串

s1 = 'hello world'
print(s1[2:5])
print(s1[4:])
print(s1[:5])
print(s1[0:-2:2])
print(s1[::-1])

打印结果:
llo
o world
hello
hlowr
dlrow olleh

3、成员运算:in,not in

s1 = 'hello world'
print('o'in s1)
print('o' not in s1)

打印结果:
True
False

4、strip:去除字符串两边的空格,中间不算

  input无论接收的是什么类型,一定返回字符串

a1 = '******kang******'     # 只想取出kang
print(a1.strip("*"))
# strip()里的符号可以自定义

打印结果:
kang

5、split:切分

  作用:对字符串进行切分,可以指定切分的分隔符,返回是一个列表

a1 = 'kang|18|male'
print(a1.split('|'))

打印结果:
['kang', '18', 'male']

6、len:获取当前数据中的元素的个数

a = 'hello'
print(len(a))
for i in a:
    print(i)

打印结果:
5
h
e
l
l
o

需要掌握的知识点

7、restrip/lstrip

 restrip:去除右边的空格/字符

 lestrip:去除左边的空格/字符

a1 = '*******kang*******'
print(a1.rstrip('*'))
print(a1.lstrip('*'))

打印结果:
*******kang
kang*******

8、lower,upper

 lower:所有字符改成小写

 upper:所有字符改成大写

a1 = 'Kang'
print(a1.lower())
print(a1.upper())

打印结果:
kang
KANG

9、startswith/endswith  : 判断当前字符串是否以。。。开头,或者以。。结尾,返回的一定是布尔值

s1 = 'Hello world'
print(s1.startswith("He"))
print(s1.endswith('ld'))

打印结果:
True
True

10、.format/f-string

# 你的名字是:kang,你的年龄是:18
name = 'kang'
age = 21
print("你的名字是:", name, "你的年龄是,", age)
print("你的名字是:{},你的年龄是:{}".format(name, age))
print("你的名字是:{0},你的年龄是:{1}".format(name, age))
print("你的名字是:{name},你的年龄是:{age},性别是:{gender}".format(age=age, name=name, gender='male'))
# f-string:
# 通过大括号接收变量,在字符串前面一定要加一个小写f,,,,在python3.6以后才有
print(f"你的名字是:{name},你的年龄是:{age}")

打印结果:
你的名字是: kang 你的年龄是, 21
你的名字是:kang,你的年龄是:21
你的名字是:kang,你的年龄是:21
你的名字是:kang,你的年龄是:21,性别是:male
你的名字是:kang,你的年龄是:21

11、split,rsplit

s1 = 'name,age,gender'
print(s1.split(' , ', 1))   # 可指定切分次数

打印结果:
['name,age,gender']

12、join:将可迭代对象(l1列表中每个元素按照前面字符串中的分隔符进行拼接)

l1 = ['kang', '21', 'male']
print('|'.join(l1))

打印结果:
kang|21|male

13、replace:将字符串中的元素替换,参数先老值再新值

s1 = 'kang,21'
print(s1.replace('kang', 'zhao'))

打印结果:
zhao,21

14、isdigit:判断当前字符串中的数据是否为一个数字(可判断bytes,unicode)

score = input('请输入分数:')
if score.isdigit():
    score = int(score)
    if score >= 90:
        print('优秀')
else:
    print('你tmd能不能好好输')

了解的知识点

find / rfind / index / rindex / count

# find:查找当前字符串中某个元素的位置,返回索引,找不到就返回-1
s1 = '你今天吃饭吃了吗?'
print(s1.find("", ))
# index  # 查找当前字符串中某个元素的位置,返回索引,找不到返回异常
print(s1.index(""))
# count  # 统计当前字符串中某一个元素的个数
print(s1.count(""))

打印结果:
8
8
2

center \ ljust \ rjust \ zfill

print("欢迎光临".center(8,"-"))
print("欢迎光临".ljust(30,"-"))
print("欢迎光临".rjust(30,"-"))
print("欢迎光临".zfill(50))
s1 = """
kang\t18\tmale\t
zhao\t18\tfemale\t
"""
print(s1.expandtabs())
print(s1.expandtabs(20))

打印结果:
--欢迎光临--
欢迎光临--------------------------
--------------------------欢迎光临
0000000000000000000000000000000000000000000000欢迎光临

kang    18      male    
zhao    18      female  


kang                18                  male                
zhao                18                  female  

is系列

a = b'10'
b = '10'
c = ''
d = 'IV'
print(type(a))
print(b.isnumeric())
print(c.isnumeric())
print(d.isnumeric())
# isdigit: unicode,bytes
print(a.isdigit())
print(b.isdigit())

打印结果:
<class 'bytes'>
True
True
False
True
True

列表

用途:用于存一个或多个不同类型的值

定义方式:通过中括号存值,每个值之间通过都好进行分隔

常用方法:

1、索引取值(正反都可以取,不仅可取,还可以存)

l1 = [1, 2, 3, 4, 5, 6, 7]
print(l1[2])

打印结果:
3

2、索引切片

l1 = [1, 2, 3, 4, 5, 6, 7]
print(l1[2:5])
print(l1[4:])
print(l1[:5])
print(l1[0:-2:2])
print(l1[::-1])

打印结果:
[3, 4, 5]
[5, 6, 7]
[1, 2, 3, 4, 5]
[1, 3, 5]
[7, 6, 5, 4, 3, 2, 1]

3、append:追加值,只能添加到列表的最后,一次性只能添加一个值***

l1 = [1, 2, 3, 4, 5, 6, 7]
l1.append(1000)
print(l1)

打印结果:
[1, 2, 3, 4, 5, 6, 7, 1000]

4、insert:插入值,通过索引指定插入位置

l1 = [1, 2, 3, 4, 5, 6, 7]
l1.insert(3, 999)
print(l1)

打印结果:
[1, 2, 3, 999, 4, 5, 6, 7]

5、extend:追加必须是可迭代对象,在最后


l1 = [1, 2, 3, 4, 5, 6, 7]
l1.extend([8, 9])
print(l1)

打印结果:
[1, 2, 3, 4, 5, 6, 7, 8, 9]

6、remove:指定值删除,比较彻底

l1 = [1, 2, 3, 4, 5, 6, 7]
l1.remove(1)
print(l1)

打印结果:
[2, 3, 4, 5, 6, 7]

7、pop:不传值,默认从最后开始删,指定索引删,pop是有返回值的

l1 = [1, 2, 3, 4, 5, 6, 7]
val = l1.pop(2)
print(l1)
print(val)

打印结果:
[1, 2, 4, 5, 6, 7]
3

 8、del:用索引删除

l1 = [1, 2, 3, 4, 5, 6, 7, 2]
del l1[2]
print(l1)

打印结果:
[1, 2, 4, 5, 6, 7, 2]

9、count:统计当前列表中指定元素的个数

l1 = [1, 2, 3, 4, 5, 6, 7, 2]
print(l1.count(2))

打印结果:
2

10、index:获取当前元素的索引值,还可以指定查找范围

l1 = [1, 2, 3, 4, 5, 6, 7, 2]
print(l1.index(2,0,7))

打印结果:
1

11、sort:排序,在原列表上进行排序操作(默认从小到大),原数据会更改

l1.sort()
print(l1)
# reverse的值默认是False改成True就会变成倒序
l1.sort(reverse=True)
print(l1)
# sorted:python的内置函数,在排序时会生成一个新列表,元数据不变
sorted(l1)
print(l1)

打印结果:
[1, 2, 2, 3, 4, 5, 6, 7]
[7, 6, 5, 4, 3, 2, 2, 1]
[7, 6, 5, 4, 3, 2, 2, 1]

12、clear:清空列表数据

l1 = [1, 2, 3, 4, 5, 6, 7, 2]
l1.clear()
print(l1)

打印结果:
[]

 13、reverse:反转列表,不排序

l1 = [1, 2, 3, 4, 5, 6, 7, 2]
l1.reverse()
print(l1)

打印结果:
[2, 7, 6, 5, 4, 3, 2, 1]

 

posted @ 2019-11-05 19:48  小小小小小小小小小白  阅读(287)  评论(0编辑  收藏  举报