Python学习——(数据类型及其常用函数)

news2024/11/27 21:54:50

目录

一、数据类型

判断数据类型type()

二、数据类型的转换

三、运算符

(一)算数运算符

(二)赋值运算符

(三)复合赋值运算符

(四)比较运算符

(五)逻辑运算符

四、输入输出

(一)输出

(二)输入

五、各数据类型常用函数

(一)数值函数

1.绝对值abs(x)

2.最大值max(x1,x2...)

3.最小值min(x1,x2...)

4.向上取整math.ceil(x)

5.向下取整math.floor(x)

6.返回e的x次幂math.exp(x)

7.返回x的整数部分与小数部分modf(x)

8.x**y的值math.pow(x)

9.四舍五入round(x)

10.求平方根math.sqrt(x)

11. 随机数random()

12.从指定范围内随机挑选random.choice()

13. 按指定基数递增的集合中获取一个随机数randrange ([start,] stop [,step]) 

14. 将序列的所有元素随机排序shuffle()

15.三角函数

(二)字符串函数

1.字符串取值取下标

2.字符串长度

3.全部转为小写

4.全部转为大写

5.整个字符串首字母大写(字符串"标题化")

6.单词首字母大写

7.字符串大小写互转

8.字符串填充

9.判断子字符串在字符串中出现的次数

10.判断字符串开头/结尾

11.判断子字符串是否包含在字符串中find(str,beg=0,end=len(string))

12. 寻找字符串下标

13.字符串指定拼接join

14.字符串去除空格

15.字符串中最大/最小的字母

16.替换字符串中的内容

17.字符串分割

18.返回长度为 width 的字符串,原字符串右对齐,前面填充0

(三)列表函数

1.列表取值取下标

2.列表拼接

3.删除列表元素

4.判断列表内容是否一致

5.返回列表个数

6.返回列表的最大/最小值

7.统计某个元素在列表中出现的次数 

8.判断列表元素的索引位置

9.列表元素反转

10.列表元素排序

11.清空列表list.clear

12.复制列表list.copy

(四)元组函数

1.元组的形式

2.创建空元组

3.访问元组中的元素与字符串相同,取下标

4.判断元组的长度

5.判断元组内元素的最大/最小值

6.元组中的元素不能修改

(五)字典函数

1.访问字典的数据——通过键访问

2.修改字典

3.删除字典

4.字典键的特性

5.输出字典的长度

6.复制字典dict.copy()

7.创建新字典

8.判断键是否存在

(六)集合函数

1.集合可以自动去重

2.集合之间的运算

3.添加元素add()与update()

4.删除集合中的元素

5.复制集合copy()

6.返回多个集合的并集union()

7.判断是否包含元素


一、数据类型

判断数据类型type()

a = 1.23
print(type(a))  # float

二、数据类型的转换

# 浮点型转换为整型
print(int(12.36))  # 12

# 整型转换为浮点型
print(float(17))  # 17.0

# 浮点型转换为字符串
print(str(-9.63)) # -9.63

# 转换为布尔类型
# False的情况:

print(bool(0))
print(bool(0.0))
print(bool(""))
print(bool(''))
print(bool(())) 
print(bool([])) 
print(bool({}) 
print(bool(" "))

# 其他转为布尔类型的结果都是True

三、运算符

(一)算数运算符

(二)赋值运算符

a = 10

a = b = 10

(三)复合赋值运算符

(四)比较运算符

(五)逻辑运算符

四、输入输出

——相当于java的Scanner scanner = new Scanner(System.in);

(一)输出

name = 'zs'
age = 12
# %s代表的是字符串 %d代表的是数值
print('我的姓名为%s,年龄为%d' % (name, age))
# 我的姓名为zs,年龄为12

(二)输入

password = input('请输入姓名:')
print('您的姓名为:%s' % password)
# 请输入姓名:张三
# 您的姓名为:张三

五、各数据类型常用函数

(一)数值函数

1.绝对值abs(x)

print(abs(-9.6))  # 9.6

2.最大值max(x1,x2...)

print(max(32, -9, 89))  # 89

3.最小值min(x1,x2...)

print(min(32, -9, 89))  # -9

4.向上取整math.ceil(x)

print(math.ceil(-5.8), math.ceil(5.3))  # -5 6

5.向下取整math.floor(x)

print(math.floor(-5.8), math.floor(5.8))  # -6 5

6.返回e的x次幂math.exp(x)

print(math.exp(1))  # 2.718281828459045

7.返回x的整数部分与小数部分modf(x)

print(math.modf(9.6)) # (0.5999999999999996, 9.0)

8.x**y的值math.pow(x)

print(math.pow(2, 3))  # 8.0

9.四舍五入round(x)

print(round(-9.8), round(9.8))  # -10  10

10.求平方根math.sqrt(x)

print(math.sqrt(121))  # 11.0

11. 随机数random()

print(random())  # 0.7661687961118427
print(math.ceil(random() * 10))  # 3

12.从指定范围内随机挑选random.choice()

print(random.choice(range(100)))  # 96
print(random.choice([8, 5.6, -4, 55]))  # 5.6
print(random.choice('hello world'))  # e

13. 按指定基数递增的集合中获取一个随机数randrange ([start,] stop [,step]) 

# 从1~99内获取奇数
print(random.randrange(1, 99, 2))  # 93

# 从0~100之间获取随机数
print(random.randrange(100))   # 13

14. 将序列的所有元素随机排序shuffle()

list1 = [20, 8, 6, 77]
random.shuffle(list1)
print(list1)  # [77, 8, 20, 6]

15.三角函数

print(math.cos(0), math.cos(math.pi))  # 1.0 -1.0
print(math.sin(0))  # 0.0
print(math.tan(0))  # 0.0

(二)字符串函数

1.字符串取值取下标

string = 'hello'
print(string[1],string[2:4])  # e  ll

2.字符串长度

print(len('java hadoop'))  # 11

3.全部转为小写

print(str.lower('JAVA HADOOP'))  # java hadoop

4.全部转为大写

print(str.upper('java hadoop'))  # JAVA HADOOP

5.整个字符串首字母大写(字符串"标题化")

print(str.capitalize('JAVA HADOOP'))  # Java hadoop

6.单词首字母大写

print(str.title('java hadoop'))  # Java Hadoop

7.字符串大小写互转

print(str.swapcase('javA hadOOP'))  # JAVa HADoop

8.字符串填充

print(str.center('Java hadoop', 20, '*'))  # ****Java hadoop*****
print(str.ljust('Java hadoop', 20, '*'))  # Java hadoop*********
print(str.rjust('Java hadoop', 20, '*'))  # *********Java hadoop

9.判断子字符串在字符串中出现的次数

语法:str.count(sub, start= 0,end=len(string))

参数

  • sub -- 搜索的子字符串
  • start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。
  • end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置。
string = '****Java hadoop*****'
print(string.count('*'))  # 9
print(string.count('*', 3, 10))  # 1

10.判断字符串开头/结尾

string = '****Java hadoop*****'
print(string.startswith('/'))  # False
print(string.endswith('*'))  # True
print(string.endswith('*', 1, 4))  # True
print(string.endswith('*', 3, 6))  # False

11.判断子字符串是否包含在字符串中find(str,beg=0,end=len(string))

检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1

string = '****Java hadoop*****'
print(string.find('*',3,10))  # 3
print(string.rfind('*'))  # 19

12. 寻找字符串下标

与find方法一样,但是如果str不在字符串中会报异常

print(string.index('a'))  # 5
print(string.rindex('a'))  # 10

13.字符串指定拼接join

str1 = '-'
str2 = 'world'
print(str1.join(str2))  # w-o-r-l-d

14.字符串去除空格

print(str.strip('  java  '))   # java
print(str.lstrip('  java  '))  # java
print(str.rstrip('  java  '))  #   java

15.字符串中最大/最小的字母

print(max('zhello'),min('zhello'))  # z e

16.替换字符串中的内容

print(str.replace('hello', 'l', '*'))  # he**o

17.字符串分割

string2 = 'Java hadoop spark flink mysql'

# 以空格为分隔符
print(string2.split(' '))  # ['Java', 'hadoop', 'spark', 'flink', 'mysql']

# 以a为分隔符,分割2次
print(string2.split('a',2))  # ['J', 'v', ' hadoop spark flink mysql']

# 以a为分隔符
print(string2.split('a'))  # ['J', 'v', ' h', 'doop sp', 'rk flink mysql']

18.返回长度为 width 的字符串,原字符串右对齐,前面填充0

string = '****Java hadoop*****'
print(string.zfill(25))  # 00000****Java hadoop*****

(三)列表函数

1.列表取值取下标

list = ['java','hadoop','spark','flink']
print(list[1:3],list[-3:-2], list[2:])  
# ['hadoop', 'spark'] ['hadoop'] ['spark', 'flink']

2.列表拼接

list = ['java','hadoop','spark','flink']
list.append('flume')
print(list)  # ['java', 'hadoop', 'spark', 'flink', 'flume']

list1 = ['hello','world']
list += list1
print(list)  # ['java', 'hadoop', 'flink', 'flume', 'hello', 'world']

list2 = [list,list1] # 类似二维数组
print(list2)  
# [['java', 'hadoop', 'flink', 'flume', 'hello', 'world'], ['hello', 'world']]

print(list2[0],list2[1][1])
# ['java', 'hadoop', 'flink', 'flume', 'hello', 'world'] world

list1.extend('oracle')
print(list1)  # ['hello', 'world', 'o', 'r', 'a', 'c', 'l', 'e']

list1.insert(3,'2233')
print(list1)  # ['hello', 'world', 'o', '2233', 'r', 'a', 'c', 'l', 'e']

3.删除列表元素

list = ['java','hadoop','spark','flink']
del list[2]
print(list)  # ['java', 'hadoop', 'flink', 'flume']

# 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'world']
list1.pop()
print(list1)  # ['java', 'hadoop', 'flink', 'flume', 'hello']

list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'world']
list1.pop(2)
print(list1)  # ['java', 'hadoop', 'flume', 'hello', 'world']

# 移除列表中某个值的第一个匹配项
list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'world']
list1.remove('flume')
print(list1)  # ['java', 'hadoop', 'flink', 'hello', 'world']
Python 表达式结果描述
len([1, 2, 3])3长度
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]组合
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']重复
3 in [1, 2, 3]True元素是否存在于列表中
for x in [1, 2, 3]: print(x, end=" ")1 2 3迭代

4.判断列表内容是否一致

import operator
list1 = ['a', 'b']
list2 = ['a', 'b']
list3 = ['a']
print(operator.eq(list1, list2), operator.eq(list1, list3))  # True False

5.返回列表个数

list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'world']
print(len(list1))  # 6

6.返回列表的最大/最小值

list1 = [-9, 6, 78, 5.2]
print(max(list1), min(list1))  # 78 -9

7.统计某个元素在列表中出现的次数 

list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'java']
print(list1.count('java'))  # 2

8.判断列表元素的索引位置

list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'java']
print(list1.index('hadoop'))  # 1

9.列表元素反转

list1 = ['java', 'hadoop', 'flink', 'flume', 'hello', 'world']
list1.reverse()
print(list1)  # ['world', 'hello', 'flume', 'flink', 'hadoop', 'java']

10.列表元素排序

list1 = [-9.4,-55,78,999]
list1.sort()
print(list1)  # [-55, -9.4, 78, 999]

11.清空列表list.clear

12.复制列表list.copy

(四)元组函数

1.元组的形式

>>> tup1 = ('Google', 'Runoob', 1997, 2000)
>>> tup2 = (1, 2, 3, 4, 5 )
>>> tup3 = "a", "b", "c", "d"   #  不需要括号也可以
>>> type(tup3)
<class 'tuple'>

2.创建空元组

tup1=()

元组中只包含一个元素时,需要在元素后面添加逗号 , ,否则括号会被当作运算符使用:

>>> tup1 = (50)
>>> type(tup1)     # 不加逗号,类型为整型
<class 'int'>

>>> tup1 = (50,)
>>> type(tup1)     # 加上逗号,类型为元组
<class 'tuple'>

3.访问元组中的元素与字符串相同,取下标

Python 表达式结果描述
tup[1]'Runoob'读取第二个元素
tup[-2]'Weibo'反向读取,读取倒数第二个元素
tup[1:]('Runoob', 'Taobao', 'Wiki', 'Weibo', 'Weixin')截取元素,从第二个开始后的所有元素。
tup[1:4]('Runoob', 'Taobao', 'Wiki')截取元素,从第二个开始到第四个元素(索引为 3)。

4.判断元组的长度

tup1 = ('java','hadoop', 'spark', 'flume')
print(len(tup1))  # 4

5.判断元组内元素的最大/最小值

tup1 = ('java','hadoop', 'spark', 'flume')
print(max(tup1),min(tup1))  # spark flume

6.元组中的元素不能修改

(五)字典函数

d = {key1 : value1, key2 : value2, key3 : value3 }由键值对组合而成

键必须是唯一的,但值则不必。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字。

1.访问字典的数据——通过键访问

# 返回指定键的值
dict1 = {'name':'zs', 'age':19}
print(dict1['name'])  # zs
# 如果dict1后面的键没有,会触发异常

# dict.get(key[, value]) 
# key -- 字典中要查找的键。
# value -- 可选,如果指定键的值不存在时,返回该默认值。

dict2 = {'name': 'zhangsan', 'age': 10, 'gender': '男'}
print(dict2.get('age'))  # 10
print(dict2.get('java'))  # None
print(dict2.get('hadoop', '没有这个值!'))  # 没有这个值!

# dict.setdefault(key, default=None)函数:当键值不存在,或默认添加到字典中
print(dict2.setdefault('java','键不存在'))  # 键不存在
print(dict2)
# {'name': 10, 'age': 10, 'gender': 10, 'java': '键不存在'}

# 嵌套字典
dict3 = {'name': {'name1': 'zs', 'name2': 'ls'}, 'age': {'age1': 18, 'age2': 19}}
print(dict3['name'])  # {'name1': 'zs', 'name2': 'ls'}
print(dict3.get('name', {}).get('name2'))  # ls
print(dict3.get('age', {}).get('age1'))  # 18

2.修改字典

dict1 = {'name':'zs', 'age':19}
dict1['name']='ls'
print(dict1)  # {'name': 'ls', 'age': 19}


dict2 = {'name': 10, 'age': 10, 'gender': 10}
dict2.update({'class': 'flink'})
print(dict2)
# {'name': 10, 'age': 10, 'gender': 10, 'class': 'flink'}

3.删除字典

dict1 = {'name':'zs', 'age':19}
del dict1['name'] # 删除键 'name'
print(dict1)  # {'age': 19}

dict1 = {'name':'zs', 'age':19}
dict1.clear()     # 清空字典
print(dict1)  # {}

dict1 = {'name':'zs', 'age':19}
del dict1         # 删除字典
print(dict1)


# pop(key[,default])
# key - 要删除的键
# default - 当键 key 不存在时返回的值

dict2 = {'name': 'zhangsan', 'age': 10, 'gender': 10}
element = dict2.pop('name')
print('删除的元素为:',element)  # 删除的元素为: zhangsan
print('删除后的字典为:',dict2)  # 删除后的字典为: {'age': 10, 'gender': 10}

dict2 = {'name': 'zhangsan', 'age': 10, 'gender': 10}
element = dict2.pop('java','不存在的key')
print('删除的元素为:',element)  # 删除的元素为: 不存在的key
print('删除后的字典为:',dict2)  # 删除后的字典为: {'name': 'zhangsan', 'age': 10, 'gender': 10}


# dict.popitem()
# 返回并删除字典中的最后一对键和值。

dict2 = {'name': 'zhangsan', 'age': 10, 'gender': 10}
dict2.popitem()
print('删除后的字典为:',dict2)  # 删除后的字典为: {'name': 'zhangsan', 'age': 10}

4.字典键的特性

1)不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住

dict1 = {'name': 'zs', 'name': 'ls'}
print(dict1)  # {'name': 'ls'}

2)键必须不可变,所以可以用数字,字符串或元组充当,但不可以用列表

dict1 = {1: 'zs', 'name': 'ls',['age']: 18}
print(dict1)
Traceback (most recent call last):
  File "*********", line 1, in <module>
    dict1 = {1: 'zs', 'name': 'ls',['age']: 18}
TypeError: unhashable type: 'list'

5.输出字典的长度

dict1 = {'name': 'zhangsan','age': 22,'gender': '男'}
print(len(dict1))  # 3

6.复制字典dict.copy()

7.创建新字典

seq = ('name', 'age', 'gender')
# 不指定值
dict2 = dict.fromkeys(seq)
print(dict2)  # {'name': None, 'age': None, 'gender': None}
# 指定值
dict2 = dict.fromkeys(seq, 10)
print(dict2)  # {'name': 10, 'age': 10, 'gender': 10}

8.判断键是否存在

dict2 = {'name': 'zhangsan', 'age': 10, 'gender': '男'}
if 'name' in dict2:
    print('键存在')
else:
    print('键不存在')  # 键存在

if 'name1' not in dict2:
    print('键不存在')
else:
    print('键存在')  # 键不存在

(六)集合函数

集合(set)是一个无序的不重复元素序列。

        可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

1.集合可以自动去重

set1 = {'java','mysql', 'hadoop', 'spark', 'java'}
print(set1)  # {'java', 'spark', 'hadoop', 'mysql'}

2.集合之间的运算

a = set('afhduias')
b = set('afhyuias')
# a中有,b中没有
print(a - b)  # {'d'}
# a中没有,b中有
print(b - a)  # {'y'}
# 集合a或b中包含的所有元素
print(a | b)  # {'y', 's', 'd', 'f', 'h', 'a', 'i', 'u'}
# 集合a和b中都包含了的元素——交集
print(a & b)  # {'a', 'i', 'u', 'f', 's', 'h'}
# 不同时包含于a和b的元素
print(a ^ b)  # {'d', 'y'}

########################################################

# 元素包含在集合 a ,但不在集合 b
a = {'hello', 'world'}
b = {'hello', 'java'}
c = a.difference(b)
d = b.difference(a)
print(a, b)  # {'hello', 'world'} {'hello', 'java'}
print(c, d)  # {'world'} {'java'}

# difference_update直接在原来的集合中移除元素,没有返回值
a = {'hello', 'world'}
b = {'hello', 'java'}
a.difference_update(b)
print(a, b)  # {'world'} {'hello', 'java'}


########################################################
# 返回集合的交集
# intersection()——有返回值
# intersection()_update——没有返回值

#########################################################
symmetric_difference()

3.添加元素add()与update()

set1 = {'java','mysql', 'hadoop', 'spark'}
set1.add('flink')
print(set1)  # {'spark', 'mysql', 'java', 'hadoop', 'flink'}

set1 = {('java', 'mysql', 'hadoop', 'spark')}
set1.update({1, 2})
set1.update([1, 4], [2, 6])  
print(set1)  # {1, 2, 4, 6, ('java', 'mysql', 'hadoop', 'spark')}

4.删除集合中的元素

set1 = {'java', 'mysql', 'hadoop', 'spark', 'flink'}
set1.remove('mysql')

# 移除指定元素后顺序打乱
print(set1)  # {'spark', 'java', 'flink', 'hadoop'}

##########################################################
set1 = {'java', 'mysql', 'hadoop', 'spark', 'flink'}
print(set1)  # {'spark', 'mysql', 'java', 'hadoop', 'flink'}
set1.clear()
print(set1)  # set()

##########################################################

# difference_update直接在原来的集合中移除元素,没有返回值
a = {'hello', 'world'}
b = {'hello', 'java'}
a.difference_update(b)
print(a, b)  # {'world'} {'hello', 'java'}

##########################################################

# discard() 方法用于移除指定的集合元素。
set1 = {'java', 'mysql', 'hadoop', 'spark'}
set1.discard('java')
print(set1)  # {'hadoop', 'mysql', 'spark'}

set1 = {'java', 'mysql', 'hadoop', 'spark'}
set1.discard('oracle')
print(set1)  # {'mysql', 'java', 'spark', 'hadoop'}

##########################################################

# 随机移除一个元素
c = {'hello', 'java', 'hadoop'}
c.pop()
print(c)  # {'hadoop', 'hello'}

##########################################################
# 返回两个集合中不重复的元素集合——有返回值
a = {'hello', 'java', 'mysql'}
b = {'hello', 'world', 'java'}
print(a.symmetric_difference(b))  # {'mysql', 'world'}
print(a, b)  # {'mysql', 'hello', 'java'} {'hello', 'world', 'java'}


# 移除当前集合中在另外一个指定集合相同的元素,并将另外一个指定集合中不同的元素插入到当前集合中
a = {'hello', 'java', 'mysql'}
b = {'hello', 'world', 'java'}
a.symmetric_difference_update(b)  # 没有返回值
print(a)  # {'world', 'mysql'}

5.复制集合copy()

6.返回多个集合的并集union()

a = {'hello', 'java', 'mysql'}
b = {'hello', 'world', 'java'}
c = {'zs', 'ls', 'ww'}
d = a.union(b,c)
print(d)  # {'mysql', 'ls', 'ww', 'java', 'world', 'hello', 'zs'}

7.判断是否包含元素

# isdisjoint() 方法用于判断两个集合是否包含相同的元素,如果没有返回 True,否则返回 False。
a = {'hello1', 'world'}
b = {'hello', 'java'}
c = {'hello', 'java'}

# 判断集合b中是否有包含 集合a的元素
x = a.isdisjoint(b)

# 判断集合c中是否有包含 集合b的元素:
y = b.isdisjoint(c)

print(x, y)  # True False

#############################################################

a = {'hello', 'java'}
b = {'hello', 'world', 'java'}
# b是否包含a
print(a.issubset(b))  # True
# b是否完全包含a
print(a.issuperset(b))  # False

##############################################################

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/180470.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git + Jenkins 自动化 NGINX 发布简易实现

概述 之前基于 GitLab Jenkins 实现了简单的 NGINX 的自动化发布。 具体包含如下的组件&#xff1a; GitLab包括 GItLab 的 WebHook&#xff1b; Jenkins 及其插件&#xff1a;Generic Webhook TriggerPublish Over SSH &#x1f9e0;疑问&#xff1a; 为什么不用 Ansible&…

算法训练营DAY44|518. 零钱兑换 II、377. 组合总和 Ⅳ

这两道题是对于完全背包题型的另一个维度&#xff0c;都是求解给定背包容量求装满背包最多有几种方法的题目。两道题十分相像&#xff0c;但在遍历顺序上却又有着极其微妙的差别。 518. 零钱兑换 II - 力扣&#xff08;LeetCode&#xff09;https://leetcode.cn/problems/coin…

看完流浪地球2,这些功课你必须要补

昨天看了流浪地球2&#xff0c;里面的信息量太大了&#xff0c;回来补充了一些功课&#xff0c;这些知识&#xff0c;看完&#xff0c;才算对流浪地球2有了进一步了解。地球人的航天路径我们的太空航程是什么样子的呢&#xff1f;要从第二次世界大战开始。回形针计划&#xff1…

金仓数据库简单巡检与事务阻塞会话简单处理

查看KES版本信息 使用version函数查看 这种方式能详细显示信息 使用ksql查看 查看license有效期 查看实例启动时间和运行时长 查看实例启动时间 查看KES无故障运行时长 查看数据库列表 使用元命令\l查看 使用字典查看 查看数据库占用的磁盘空间 统计当前数据库所占的磁盘空…

chrome在爬虫中的使用

chrome浏览器使用方法介绍 学习目标 了解 新建隐身窗口的目的了解 chrome中network的使用了解 寻找登录接口的方法 1 新建隐身窗口 浏览器中直接打开网站&#xff0c;会自动带上之前网站时保存的cookie&#xff0c;但是在爬虫中首次获取页面是没有携带cookie的&#xff0c;这…

Wireshark TS | Packet Challenge 之 FTP 案例分析

前言 来自于 Sharkfest Packet Challenge 中的一个数据包案例&#xff0c;Sharkfest 是 Wireshark 官方组织的一年一度的大会&#xff0c;致力于在 Wireshark 开发人员和用户社区之间分享知识、经验和最佳实践。印象中早期是一年一次&#xff0c;近几年发展成一年两次&#xf…

【华为上机真题】工号不够用咋办

&#x1f388; 作者&#xff1a;Linux猿 &#x1f388; 简介&#xff1a;CSDN博客专家&#x1f3c6;&#xff0c;华为云享专家&#x1f3c6;&#xff0c;Linux、C/C、云计算、物联网、面试、刷题、算法尽管咨询我&#xff0c;关注我&#xff0c;有问题私聊&#xff01; &…

2D测量 Metrology——

基本流程: 1,创建计量模型 create_metrology_model (MetrologyHandle) 2,设置计量模型的图像大小 set_metrology_model_image_size (MetrologyHandle, Width, Height) 3,将计量对象添加至计量模型中.(矩形,直线,圆,椭圆) add_metrology_object_rectangle2_measure  //矩形…

【高并发】- 指标介绍

什么是高并发 高并发系统有哪些关键指标 高并发系统介绍 本文主要讲解高并发系统的概念&#xff0c;在实际开发过程中为什么要使用高并发系统&#xff0c;相比于传统系统&#xff0c;能带来怎样的改变。 1.1 高并发介绍 高并发&#xff08;Hign Concurrency&#xff09;&#…

Linux常用命令——sed命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) sed 功能强大的流式文本编辑器 补充说明 sed是一种流编辑器&#xff0c;它是文本处理中非常中的工具&#xff0c;能够完美的配合正则表达式使用&#xff0c;功能不同凡响。处理时&#xff0c;把当前处理的行存…

剖析“类和对象” (下) -------- CPP

学习完“类和对象”(上)【剖析“类和对象” (上) -------- CPP】和(中)【剖析“类和对象” (中) -------- CPP】&#xff0c;相信各位同学对CPP中类与对象的理解或多或少都加深了一点。 本篇博客将和大家一同再次学习CPP中类和对象的知识点&#xff0c;跟随本篇博客的脚步定能…

Java两大工具库:Commons和Guava(1)

您好&#xff0c;我是湘王&#xff0c;这是我的CSDN博客。值此新春佳节&#xff0c;我给您拜年啦&#xff5e;祝您在新的一年中所求皆所愿&#xff0c;所行皆坦途&#xff0c;展宏“兔”&#xff0c;有钱“兔”&#xff0c;多喜乐&#xff0c;常安宁&#xff01;Java的成功很大…

Kettle(8):删除组件

删除组件能够按照指定条件,将表中的数据删除。 1 需求 有以下一个文本文件,文本文件包含了要删除的两个用户id: id 392456197008193000 267456198006210000 需要使用Kettle将文本文件中两个ID对应的t_user1表的数据删除。 2 构建Kettle数据流图 效果图: 1 将文本文件输…

【算法突击】动态规划系列 (一)| 程序员面试 | 最大子数组和 | 最长递增子序列 | 最长公共子序列

【算法突击】动态规划系列 &#xff08;一&#xff09;| 程序员面试 | 最大子数组和 | 最长递增子序列 | 最长公共子序列 文章目录【算法突击】动态规划系列 &#xff08;一&#xff09;| 程序员面试 | 最大子数组和 | 最长递增子序列 | 最长公共子序列1. 最大子数组和1.1 题目…

C 语言零基础入门教程(十三)

函数指针 函数指针是指向函数的指针变量。 通常我们说的指针变量是指向一个整型、字符型或数组等变量&#xff0c;而函数指针是指向函数。 函数指针可以像一般函数一样&#xff0c;用于调用函数、传递参数。 函数指针变量的声明&#xff1a; typedef int (*fun_ptr)(int,i…

ATAC-seq分析:Annotating Peaks(9)

1. 注释开放区域 将已识别的无核小体区域与基因组特征&#xff08;如基因和增强子&#xff09;相关联通常很有趣。 一旦注释到基因或增强子的基因&#xff0c;我们就可以开始将 ATACseq 数据与这些基因的特征相关联。 &#xff08;功能注释、表达变化、其他表观遗传状态&#x…

瑞吉外卖实战

https://blog.csdn.net/weixin_43715214/category_12022798.html大佬记录项目介绍day01功能架构&#xff08;1&#xff09;用户层本项目中在构建系统管理后台的前端页面&#xff0c;我们会用到H5、Vue.js、ElementUI等技术。而在构建移动端应用时&#xff0c;我们会使用到微信小…

计算机网络连环炮40问

本文已经收录到Github仓库&#xff0c;该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点&#xff0c;欢迎star~ Github地址&#xff1a;https://github.com/…

Day09 C++STL入门基础知识六——deque容器 构造函数-赋值操作-大小操作-插入删除-数据存储-排序操作【全面深度剖析+例题代码展示】

无人问津的日子&#xff0c;我为自己喝彩&#xff01; 文章目录1. 基本概念1.1 功能1.2 与vector区别1.3 图解1.4 内部工作原理1.5 deque 容器的迭代器也是支持随机访问的2. 构造函数2.1 函数原型2.2 代码展示2.3 测试结果2.4 小think2.4.1 小问题2.4.2 思路2.4.3 修改2.4.4 测…

从零开始的数模(六)python在高等数学和线性代数中的应用

科学计算设计数值计算和符号计算&#xff0c;在python中作基础数值计算用numpy和scipy工具库&#xff0c;作符号运算用sympy工具库 sympy工具库–符号运算 符号运算基本知识 1.利用symbols函数创建符号变量构造多个符号变量时中间以空格分隔 2.利用符号变量创建表达式 3.利用…