当前位置: 首页 > news >正文

4.数据类型-字符串【Python】

文章目录

  • 字符串
    • 索引
    • 切片
    • 转义字符
    • 格式化符号
    • f-string
  • 字符串操作
    • 判断&检测
    • 转换
    • 剪切&填充
    • 拼接
    • 统计
  • 格式转化
  • 练习

字符串

​ 字符串是 Python 中最常用的数据类型。可以使用单引号,双引号,3对双引号创建一个字符串。Python 中没有单独的字符类型 char,一个字符就是长度为 1 的字符串。字符串中的字符不可改变。

str_1 = 'hello, python'
str_2 = "hello, python"
str_3 = """hello, python"""

索引

​ 字符串是一个有序集合,字符串中的字符是在内存中按照一定顺序存放的。每个字符都存在其特定的地址,这就是索引。字符相对位置从左向右、从 0 开始,最后是 -1。

切片

​ 切片是使用频率很高的操作。基本操作为:s[a:b] 表示为将字符串 s 从 a 截取至 b-1(左闭右开)。切片操作允许索引越界。

s = "123456789"
# 指定开始位置和结束位置
print(s[2:4])
# 单指定开始位置
print(s[3:])
# 单指定结束位置
print(s[:-3])
# 越界操作
print(s[1:100])

​ 输出样例:

34
456789
123456
23456789
  • [::] 的应用

​ 两个 : 操作符将括号内分为三段即:[1:2:3]。①表示开始索引、②表示结束索引、③表示间隔。要是开始索引也没有结束索引,等价于整个列表。

s = "123456789"
print(s[::2])

​ 输出样例:

13579

转义字符

转义字符描述
\反斜杠符号(在行尾时为续行符)
单引号
"双引号
\a响铃
\b退格(Backspace)
\000
\n换行
\v纵向制表符
\t横向制表符
\r回车
\f换页
\oyy八进制数,yy 代表的字符,例如:\o12 代表换行,其中 o 是字母,不是数字 0
\xyy十六进制数,yy代表的字符,例如:\x0a代表换行
\other其它的字符以普通格式输出

格式化符号

符号描述
%c格式化字符及其ASCII码
%s格式化字符串
%d格式化整数
%u格式化无符号整型
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)
%f格式化浮点数字,可指定小数点后的精度
%e用科学计数法格式化浮点数
%E作用同%e,用科学计数法格式化浮点数
%g%f和%e的简写
%G%f 和 %E 的简写
%p用十六进制数格式化变量的地址

f-string

​ f-string 是 Python3.6 之后添加的,字面量格式化字符串。f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包含,会将变量或表达式计算后替换。

name = "Jasper"
age = 6
print(f"My name is {name}, and I'm {age} year old!" )
print("My name is {0}, and I'm {1} year old!".format(name, age))
print("My name is {name}, and I'm {age} year old!".format(name = name, age = age))

​ 输出样例:

My name is Jasper, and I'm 6 year old!
My name is Jasper, and I'm 6 year old!
My name is Jasper, and I'm 6 year old!

字符串操作

​ 操作不会自动覆盖原先变量,需要进行赋值。

判断&检测

  • string.startswith(substr, beg = 0, end = len(string)):判断指定的 string 范围内开头是否为 substr
s = "12121"
print(s.startswith("12"))
print(s.startswith("212"))
True
False
  • string.endswith(suffix, beg = 0, end = len(string)):判断指定的 string 范围内结尾是否为 suffix
s = "12121"
print(s.endswith("21"))
print(s.endswith("221"))
True
False
  • string.find(str, beg = 0, end = len(string)):检测指定的 string 范围内是否存在字串 str,返回第一次出现的索引。
s = "12121"
print(s.find("212"))
print(s.find("212", 0, 3))
1
-1
  • string.rfind(str, beg = 0, end = len(string)):和 find() 类似,不过是找最后一次出现的索引。
s = "121121"
print(s.rfind("2"))
print(s.rfind("2", 0, 4))
4
1
  • string.index(str, beg = 0, end = len(string)):和 find() 类似,但是在不存在的时候会报异常。
s = "12121"
print(s.index("212"))
#print(s.index("212", 0, 3))
1
# ValueError: substring not found
  • string.rindex(str, beg = 0, end = len(string)):和 index() 类似,不过是从最后开始找。
s = "1121211"
print(s.index("212"))
#print(s.index("212", 0, 3))
2
# ValueError: substring not found
  • string.isalnum():如果 string 中至少有一个字符,且所有字符都是字母或数字返回 True,否则返回 False。
s = ""
print(s.isalnum())
s = "121aBc"
print(s.isalnum())
s = "121aBc()"
print(s.isalnum())
False
True
False
  • string.isalpha():如果 string 中至少有一个字符,且所有字符都是字母或中文返回 True,否则返回 False。
s = ""
print(s.isalpha())
s = "aBc哈哈哈"
print(s.isalpha())
s = "aBc哈哈哈12"
print(s.isalpha())
False
True
False
  • string.isdigit():如果 string 中只包含数字返回 True,否则返回 False。
s = ""
print(s.isdigit())
s = "一二三"
print(s.isdigit())
s = "123"
print(s.isdigit())
s = "123aBc"
print(s.isdigit())
False
False
True
False
  • string.isnumeric():如果 string 中只包含数字字符返回 True,否则返回 False。数字字符包含中文。
s = ""
print(s.isnumeric())
s = "一二三"
print(s.isnumeric())
s = "123一二三"
print(s.isnumeric())
s = "123aBc"
print(s.isnumeric())
False
True
True
False
  • string.islower():如果 string 中至少包含一个可区分大小写字符,且这些字符都是小写就返回 True,否则返回 False。
s = ""
print(s.islower())
s = "123abc"
print(s.islower())
s = "aBc"
print(s.islower())
False
True
False
  • string.isupper():如果 string 中至少包含一个可区分大小写字符,且这些字符都是大写就返回 True,否则返回 False。
s = ""
print(s.isupper())
s = "123ABC"
print(s.isupper())
s = "aBc"
print(s.isupper())
False
True
False
  • string.isspace():如果 string 中只包含空格,则返回 True,否则返回 False。
s = ""
print(s.isspace())
s = "  "
print(s.isspace())
s = "  a  "
print(s.isspace())
False
True
False
  • string.istitle():如果 string 是标题化的,返回 True,否则返回 False。
s = "this is a title"
print(s.istitle())
s = "This Is A Title"
print(s.istitle())
False
True
  • string.isdecimal():检查字符串是否只包含十进制字符,如果是返回 true,否则返回 false。
s = "123456"
print(s.isdecimal())
s = "abc123456"
print(s.isdecimal())
True
False

转换

  • string.capitalize():将字符串的第一个字符转换为大写。
s = "abcd"
print(s.capitalize())
Abcd
  • string.lower():将字符串中所有的大写字符转化为小写字符。
s = "AbCdEf"
print(s.lower())
abcdef
  • string.upper():将字符串中所有的小写字符转化为大写字符。
s = "AbCdEf"
print(s.upper())
ABCDEF
  • string.swapcase():将 string 中的大写转化为小写,小写转化为大写。
s = "AbCdEf"
print(s.swapcase())
aBcDeF
  • string.expandtabs(tabsize = 8):将字符串中的 tab 符号转化为空格。(以下实例为菜鸟教程上的)
str = "runoob\t12345\tabc"
print('原始字符串: {}'.format(str))# 默认 8 个空格
# runnob 有 6 个字符,后面的 \t 填充 2 个空格
# 12345 有 5 个字符,后面的 \t 填充 3 个空格
print('替换 \\t 符号: {}'.format(str.expandtabs()))# 2 个空格
# runnob 有 6 个字符,刚好是 2 的 3 倍,后面的 \t 填充 2 个空格
# 12345 有 5 个字符,不是 2 的倍数,后面的 \t 填充 1 个空格
print('使用 2 个空格替换 \\t 符号: {}'.format(str.expandtabs(2)))# 3 个空格
print('使用 3 个空格: {}'.format(str.expandtabs(3)))
# 4 个空格
print('使用 4 个空格: {}'.format(str.expandtabs(4)))
# 5 个空格
print('使用 5 个空格: {}'.format(str.expandtabs(5)))
# 6 个空格
print('使用 6 个空格: {}'.format(str.expandtabs(6)))
原始字符串: runoob	12345	abc
替换 \t 符号: runoob  12345   abc
使用 2 个空格替换 \t 符号: runoob  12345 abc
使用 3 个空格: runoob   12345 abc
使用 4 个空格: runoob  12345   abc
使用 5 个空格: runoob    12345     abc
使用 6 个空格: runoob      12345 abc
  • string.title():返回标题化的字符串。标题化:所有单词首字母为大写,其余为小写。
s = "this is a title"
print(s.title())
This Is A Title
  • string.maketrans(intab, outtab):创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。
  • translate(table, deletechars = ""):根据 str 给出的表(包含 256 个字符)转换 string 的字符, 要过滤掉的字符放到 deletechars 参数中。(以下实例为菜鸟教程上的)
from string import maketrans   # 必须调用 maketrans 函数。intab = "aeiou"
outtab = "12345"
trantab = maketrans(intab, outtab)str = "this is string example....wow!!!";
print str.translate(trantab);
th3s 3s str3ng 2x1mpl2....w4w!!!
  • string.replace(str1, str2, max_num):将 string 中的 str1 字串替换为 str2
s = "aabbaabb"
print(s.replace("aa", "***"))
print(s.replace("aa", "***", 1))
***bb***bb
***bbaabb

剪切&填充

  • string.center(width, fillchar = " "):返回指定宽度的居中字符串,使用 fillchar 填充。
s = "abcd"
print(s.center(2,"*"))
print(s.center(9,"*"))
print(s.center(10,"*"))
abcd
***abcd**
***abcd***
  • string.ljust(width, fillchar = " "):返回指定宽度的左对齐字符串,使用 fillchar 填充。
s = "1234"
print(s.ljust(2, "*"))
print(s.ljust(10, "*"))
1234
1234******
  • string.rjust(width, fillchar = " "):返回指定宽度的右对齐字符串,使用 fillchar 填充。
s = "1234"
print(s.rjust(2, "*"))
print(s.rjust(10, "*"))
1234
******1234
  • string.zfill(width):返回指定宽度的右对齐字符串,前面填充 0。
s = "1234"
print(s.zfill(2))
print(s.zfill(10))
1234
0000001234
  • string.lstrip(str = " "):截取 string 左边的空格或指定字符,每个字符都进行判定。
s = "   111222333"
print(s.lstrip())
print(s.lstrip(" 12"))
print(s.lstrip("12"))
111222333
333111222333
  • string.rstrip(str = " "):截取 string 右边的空格或指定字符,每个字符都进行判定。
s = "111222333   "
print(s.rstrip())
print(s.rstrip(" 32"))
print(s.rstrip("32"))
111222333
111
111222333   
  • string.strip(str = " "):同时在 string 执行 lstriprstrip
s = "111222333   "
print(s.rstrip())
print(s.rstrip(" 32"))
print(s.rstrip("32"))
111222333
111
111222333   

拼接

  • string.split(str = "", num = string.count(str)):以 str 为分隔符截取字符串,如果 num 有指定值,则仅截取 num+1 个子字符串。
s = "1,2,3,4,5,6"
print(s.split(","))
print(s.split(",", 3))
['1', '2', '3', '4', '5', '6']
['1', '2', '3', '4,5,6']
  • string.splitlines([keepends]):按照行(‘\r’, ‘\r\n’, \n’)分隔,返回一个包含各行作为元素的列表,如果参数 keepends 为 False,不包含换行符,如果为 True,则保留换行符。(以下实例为菜鸟教程上的)
str1 = 'ab c\n\nde fg\rkl\r\n'
print str1.splitlines();str2 = 'ab c\n\nde fg\rkl\r\n'
print str2.splitlines(True)
['ab c', '', 'de fg', 'kl']
['ab c\n', '\n', 'de fg\r', 'kl\r\n']
  • string.join(seq):以 string 为分割符,将 seq 中所有的元素合并为一个新的字符串。(seq 中元素必须都是字符串)
s = "1234"
print(','.join(s))
lst = ["1","2","3","4"]
print('*'.join(lst))
1,2,3,4
1*2*3*4

统计

  • string.count(str, beg = 0, end = len(string)):统计在 str 出现次数。
s = "12121"
print(s.count("1"))
print(s.count("1", 0, 4))
3
2
  • len(string):返回字符串长度。
s = "1234"
print(len(s))
4
  • max(string):返回 string 中最大的字母。(小写字母 大于 大写字母)
s = "abcABCZ"
print(max(s))
c
  • min(string):返回 string 中最小的字母。(小写字母 大于 大写字母)
s = "abcABCZ"
print(min(s))
A

格式转化

stingintfloatbool 相互转化:(float 转化 int 会报错)

string ⇔\Leftrightarrow int

a, s = 111, "222"
# int -> string
print(str(a), type(str(a)))
# string -> int
print(int(s), type(int(s)))
111 <class 'str'>
222 <class 'int'>

string ⇔\Leftrightarrow float

a, b, s1, s2 = 11, 11.1, "22", "22.2"
# float -> string
print(str(a), type(str(a)))
print(str(b), type(str(b)))
# string -> float
print(float(s1), type(float(s1)))
print(float(s2), type(float(s2)))
11 <class 'str'>
11.1 <class 'str'>
22.0 <class 'float'>
22.2 <class 'float'>

string ⇔\Leftrightarrow bool

  • 只有空字符会转化为 False,其余都是 True。
s1, s2, s3, s4, f = "", " ", "True", "False", True
# bool -> string
print(str(f), type(str(f)))
print(bool(s1), type(bool(s1)))
print(bool(s2), type(bool(s2)))
print(bool(s3), type(bool(s3)))
print(bool(s4), type(bool(s4)))
True <class 'str'>
False <class 'bool'>
True <class 'bool'>
True <class 'bool'>
True <class 'bool'>

练习

1.将字符串 “abcd” 转成大写。

2.计算字符串 “cd” 在 字符串 "abcd"中出现的位置。

3.字符串 “a,b,c,d” ,请用逗号分割字符串,分割后的结果是什么类型的?

4.string = “Python is good”, 请将字符串里的Python替换成 python,并输出替换后的结果。

5.有一个字符串 string = “python修炼第一期.html”,请写程序从这个字符串里获得.html前面的部分,要用尽可能多的方式来做这个事情。

6.如何获取字符串的长度?

7.“this is a book”,请将字符串里的book替换成apple。

8.“this is a book”,请用程序判断该字符串是否以this开头。

9.“this is a book”,请用程序判断该字符串是否以apple结尾。

10.“This IS a book”,请将字符串里的大写字符转成小写字符。

11.“This IS a book”,请将字符串里的小写字符,转成大写字符。

12.“this is a book\n”,字符串的末尾有一个回车符,请将其删除。

13.统计字符串a="Krungthepmahanakhon Amonrattanakosin Mahintharayutthaya Mahadilokphop Noppharatratchathaniburirom Udomratchaniwetmahasathan Amonphimanawatansathit Sakkathattiyawitsanukamprasit"中每个字符的次数。(忽略空格,不区分大小写,即A和a表示同一个。)

参考答案,仅供参考

1.将字符串 “abcd” 转成大写。

s = "abcd"
print(s.upper())

2.计算字符串 “cd” 在 字符串 "abcd"中出现的位置。

s = "abcd"
print(s.find("cd"))

3.字符串 “a,b,c,d” ,请用逗号分割字符串,分割后的结果是什么类型的?

s = "a,b,c,d"
a = s.split(",")
print(a, type(a))

4.string = “Python is good”, 请将字符串里的Python替换成 python,并输出替换后的结果。

s = "Python is good"
a = s.replace("Python", "python")
print(a)

5.有一个字符串 string = “python修炼第一期.html”,请写程序从这个字符串里获得.html前面的部分,要用尽可能多的方式来做这个事情。

s = "python修炼第一期.html"
print(s.rstrip(".html"))
print(s.replace(".html", ""))
print(s[0:s.find(".html")])
print(s.split(".html")[0])

6.如何获取字符串的长度?

s = "1234"
print(len(s))

7.“this is a book”,请将字符串里的book替换成apple。

s = "this is a book"
print(s.replace("book", "apple"))

8.“this is a book”,请用程序判断该字符串是否以this开头。

s = "this is a book"
print(s.startswith("this"))

9.“this is a book”,请用程序判断该字符串是否以apple结尾。

s = "this is a book"
print(s.endswith("apple"))

10.“This IS a book”,请将字符串里的大写字符转成小写字符。

s = "This IS a book"
print(s.lower())

11.“This IS a book”,请将字符串里的小写字符,转成大写字符。

s = "This IS a book"
print(s.upper())

12.“this is a book\n”,字符串的末尾有一个回车符,请将其删除。(这个好像和题 5 差不多)

s = "this is a book\n"
print(s.rstrip("\n"))
print(s.replace("\n", ""))
print(s[0:s.find("\n")])
print(s.split("\n")[0])

13.统计字符串a="Krungthepmahanakhon Amonrattanakosin Mahintharayutthaya Mahadilokphop Noppharatratchathaniburirom Udomratchaniwetmahasathan Amonphimanawatansathit Sakkathattiyawitsanukamprasit"中每个字符的次数。(忽略空格,不区分大小写,即A和a表示同一个。)

s = "Krungthepmahanakhon Amonrattanakosin Mahintharayutthaya Mahadilokphop Noppharatratchathaniburirom Udomratchaniwetmahasathan Amonphimanawatansathit Sakkathattiyawitsanukamprasit"
letter = 0
space = 0
digit = 0
other = 0
for i in s:if i.isalpha():#判断字母letter += 1elif i.isspace():#判断空格space += 1elif i.isdigit():#判断数字digit += 1else:other += 1
print("字母:{},空格:{},数字:{},其他:{}".format(letter, space, digit, other))

相关文章:

4.数据类型-字符串【Python】

文章目录字符串索引切片转义字符格式化符号f-string字符串操作判断&检测转换剪切&填充拼接统计格式转化练习字符串 ​ 字符串是 Python 中最常用的数据类型。可以使用单引号&#xff0c;双引号&#xff0c;3对双引号创建一个字符串。Python 中没有单独的字符类型 char…...

搞量化先搞数(上):A股股票列表免费抓取实战

到了这一步,我们学习了基础的爬虫请求库urllib和requests,尤其是后者,强大且易用,极其适合新手使用。那么今天我们就找一个相对简单的案例,来看一下如何在实战中应用爬虫技能。 相信很多朋友都对股票感兴趣,甚至有些朋友想要通过量化研究来获得超额收益。然而,想要进行…...

SpringCloud-负载均衡Ribbon

一、配置使用1、添加依赖&#xff08;该依赖包含在eureka-client依赖中&#xff09;<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-ribbon</artifactId></dependency>2、在RestTemp…...

Linux入门篇(二)

Linux前言链接文件符号链接&#xff08;软链接&#xff09;硬链接shellshell 的类型shell的父子关系理解外部命令和内建命令外部命令内建命令Linux环境变量PATH环境变量前言 在这一章&#xff0c;我对Linux中有关shell较为深入的理解和环境变量方面知识的一个记录。同时&#x…...

第四部分:特殊用途的句子——第三章:虚拟

虚拟语气 1、什么是虚拟&#xff1f; 虚拟就是非真实。换句话说&#xff0c;这事不是真的&#xff0c;这事不太可能成真&#xff0c;非真实&#xff0c;就是虚拟 2、怎么表示虚拟&#xff1f; 英语是一个典型的形式来补充内容的语言&#xff0c;若要表达虚拟&#xff0c;只…...

Java中如何获取泛型类型信息

文章目录声明侧泛型使用侧泛型获取泛型类型相关方法1. Class类的泛型方法2. Field类的泛型方法3. Method类的泛型方法4. ParameterizedType类获取声明侧的泛型类型信息获取使用侧的泛型类型信息匿名内部类实现获取使用侧的泛型类型根据使用泛型位置的不同可以分为&#xff1a;声…...

【云原生】centos7搭建安装k8s集群 v1.25版本详细教程实战

文章目录前言一. 实验环境二. k8s 的介绍三 . k8s的安装3.1 搭建实验环境3.1.1 硬件层面的要求3.1.2 软件层面环境配置3.2 docker的安装3.2.1 搭建docker3.2.2 部署 cri-dockerd3.3 部署k8s3.3.1 配置添加阿里云的yum源3.3.2 安装kubeadm kubelet kubectl3.3.3 k8s-master节点初…...

c语言指针

指针 指针是存放地址的变量&#xff0c;也可以说指针地址。 对于定义p&#xff08;这里的话&#xff0c;只是定义&#xff0c;说明p是指针&#xff09;&#xff0c;p作为一个指针去指向存放数据的位置&#xff0c;而p意思是取&#xff08;p指向的内存位置的数据&#xff09;&…...

5.33 综合案例2.0 -ESP32拍照上传阿里云OSS

综合案例2.0 - ESP32拍照上传阿里云OSS案例说明连线功能实现1.阿里云平台连接2.OSS对象存储服务3.ESP32-CAM开发环境4.代码ESP32-CAM开发板代码HaaS506开发板代码测试数据转图片方法案例说明 使用ESP32拍照,将照片数据上传阿里云OSS&#xff08;通过4G网络上传&#xff09;。 …...

java无重复字符的最长子串

给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”&#xff0c;所以其长度为 3。 示例 2: 输入: s “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “…...

测试用例设计工作中的应用

1. 等价类划分 常见的软件测试面试题划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为假设干等价类,在每一个等价类中取一…...

leetcode 困难 —— 数字 1 的个数(简单逻辑题)

&#xff08;害&#xff0c;做题是真的慢&#xff0c;这面试给我这题我估计就傻了&#xff09; 题目&#xff1a; 给定一个整数 n&#xff0c;计算所有小于等于 n 的非负整数中数字 1 出现的个数。 题解&#xff1a; 首先看看整数范围 0 < n < 10^9 不能遍历&#xff0…...

关于JSON

<!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title></title> </head> <body> <script> /* 1、JSON的英文全称&#xff1a;Java…...

Apifox-接口调用、自动化测试工具

Apifox简介 Apifox 的定位是Postman Swagger Mock JMeter&#xff0c;具有API文档管理、API调试、API Mock、API 自动化测试等功能。可以通过一种工具解决之前使用多种工具的数据同步问题。高效、及时、准确&#xff01; 安装 Apifox的安装非常方便&#xff0c;直接下载安…...

Vue一个项目兼容每个省份的个性化需求

开发环境及打包指令 后拼上省份区划"serve:henan": "yarn && vue-cli-service serve -o --encryptSM2 --zone41","serve:hunan": "yarn && vue-cli-service serve -o --encryptSM2 --zone43","serve:guizhou&quo…...

npm install报错 npm ERR! 的解决办法

以下是四种常见的npm ERR及解决方式错误一、npm ERR! A complete log of this run can be found in:npm ERR!C:\Users\nanyi\AppData\Roaming\npm-cache_logs\2021-09-17T08_58_23_413Z-debug.l查看错误日志&#xff0c;错误日志就在上面展示的C:\Users…这里如果发现错误日志里…...

echarts修改饼图,环形图的圆环宽度,大小

echarts修改环形图的圆环宽度&#xff0c;大小 环形图圆环的大小需要通过series-pie. radius属性来修改 radius 饼图的半径。 Array.<number|string>&#xff1a;数组的第一项是内半径&#xff0c;第二项是外半径。每一项遵从上述 number string 的描述。 把数组的第…...

小白系列Vite-Vue3-TypeScript:010-封装svg

上一篇我们介绍了ViteVue3TypeScript项目中mockjs的安装和配置i。本篇我们来介绍封装SVG图标组件。svg特征Preloading所有图标都是在项目运行时生成的&#xff0c;只需要操作一次dom即可。高性能内置缓存&#xff0c;仅在文件被修改时才会重新生成。安装插件vite-plugin-svg-ic…...

卷严重、难度高、激励少,如何适应空投市场新变化

自从空投交互从2020年开始之后&#xff0c;不少人都开始加入到空投交互的行列中&#xff0c;一些项目也因为“格局”的因素&#xff0c;在项目正式上线前都会给早期参与者空投代币&#xff0c;以此吸引大家的关注。但是在越来越多的人加入到撸空投行列之中后&#xff0c;现在整…...

基于Java与JSP的文件上传和下载

概念 当用户在前端页面点击文件上传后&#xff0c;用户上传的文件数据提交给服务器端&#xff0c;实现保存。 文件上传步骤 提交方式&#xff1a; 提供form表单&#xff0c;method必须是post。因为post请求无数据限制。 <form method"post"></form>…...

Gromacs中的g_mmpbsa计算带电底物与蛋白的结合能不准确

g_mmpbsa计算带电底物与蛋白的结合能总是不准确 TOC 在做的两个项目中&#xff0c;利用g_mmpbsa计算带电底物与蛋白的结合能结果非常不可靠&#xff0c;底物带两个硫酸根离子&#xff0c;g_mmpbsa在计算带电的底物与酶的结合能时总是不准确&#xff0c;因此后续若底物带电&…...

【mmrotate】旋转目标检测之训练DOTA数据集

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 mmrotate训练DOTA数据集记录 1. 正文 1.1 数据准备 数据介绍部分&#xff0c;参考DOTA数据介绍&#xff0c;官方提供了裁剪工具development kit。这里…...

图基本概念

图&#xff1a;顶点和边的集合。无向图&#xff1a;每条边都是无方向的有向图&#xff1a;每条边都是有方向的完全图&#xff1a;任意两个点都有一条边相连稀疏图&#xff1a;有很少边或弧的图稠密图&#xff1a;有较多边或弧的图网&#xff1a;边/弧带权的图邻接&#xff1a;有…...

机器学习基础

一、基本概念 1 学习的概念 1975年图灵奖获得者、1978年诺贝尔经济学奖获得者、著名学者赫伯特.西蒙 (Herbert Simon) 曾下过一个定义: 如果一个系统&#xff0c;能够通过执行某个过程&#xff0c;就此改进了它的性能&#xff0c;那么这个过程就是学习.由此可看出&#xff0c;…...

FreeRTOS-Tickless低功耗模式 | FreeRTOS十四

目录 说明&#xff1a; 一、低功耗模式简介 1.1、STM32低功耗模式 二、Tickless模式 2.1、Tickless模式如何功耗 2.2、Tickless模式设计思想 2.3、为了降低功耗&#xff0c;又不影响系统运行&#xff0c;怎么能做到呢&#xff1f; 三、Tickless模式修改配置 3.1、配置…...

实现了统一消息中心的微服务基础框架 JVS,快点赞收藏

一、开源项目简介基于JVS&#xff08;基于spring cloud封装&#xff09;的基础开源框架&#xff0c;实现了基于多对多租户能力的管理系统。二、基础框架实现功能支持数据管理支持分布式定时任务支持分布式日志采集支持系统监控支持动态配置中心支持模板消息支持链路跟踪支持邮件…...

VMware 安装 OpenWrt 旁路由并配置 PassWall

1、准备 OpenWrt 镜像包 我已经转好了 vmdk 格式的&#xff0c;更多的可以去恩山论坛下载 OpenWrtvmdk格式-虚拟化文档类资源-CSDN下载 也可以在这个平台在线定制 OpenWrt固件下载与在线定制编译 2、网络选择 NAT 模式 3、创建虚拟机&#xff0c;选择自定义方式 4、一直下…...

R语言GD包地理探测器分析时报错、得不到结果等情况的解决方案

本文介绍在利用R语言的GD包&#xff0c;实现自变量最优离散化方法选取与执行、地理探测器&#xff08;Geodetector&#xff09;操作时&#xff0c;出现各类报错信息、长时间得不到结果等情况的解决方案。 在之前的文章R语言GD包基于栅格图像实现地理探测器与连续参数的自动离散…...

嵌入式开发:你需要知道的5种简单

传达嵌入式软件体系结构设计意图通常伴随着基于嵌入式开发人员经验的假设。你可以从资源受限的基于微控制器的系统的角度来看架构设计。如何设计架构将取决于系统的嵌入式软件分类。有许多不同的方法可以对嵌入式软件进行分类。我发现有五种简单的嵌入式软件分类可以帮助我调整…...

MVC与MVVM

MVC与MVVM举例说明MVCMVVM两者比较MVC <!DOCTYPE html> <html><head><meta charset"utf-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><title>mvc案例</title><link rel"styleshe…...

thinkphp网站后台模板/百度移动端排名

Annotation是从JDK 1.5之后提出的一个新的开发技术结构&#xff0c;利用Annotation可以有效的减少程序配置的代码&#xff0c;并且可以利用Annotation进行一些结构化的定义。 Annotation是一一种注解的形式实现的程序开发。 如果想清楚Annotation的生产意义&#xff0c;则必须…...

重庆大渡口营销型网站建设公司哪家专业/网页推广方案

目录 部分内容展示 深入浅出索引&#xff08;上&#xff09; 索引的常见模型InnoDB 的索引模型索引维护小结 深入浅出索引&#xff08;下&#xff09; 覆盖索引最左前缀原则索引下推 为什么这些SQL语句逻辑相同&#xff0c;性能却差异巨大&#xff1f; 案例一&#xff1a;条…...

网站建设实战教程/2022年十大网络流行语发布

在正文之前&#xff0c;我想问大家一个问题:问:亲&#xff0c;你有基础吗&#xff1f;答: 有啊&#xff0c;你说前端吗&#xff1f; 不就是HTML,JS,CSS 吗? so easy~问: oh-my-zsh... 好吧&#xff0c;那问题来了&#xff0c;挖掘机技术哪家强... 开玩笑。 现在才是问题的正内…...

自己做外贸购物网站/电子商务网站建设论文

1.爬虫导出方法使用: 2.导入数据库: 1.创建表结构: 2.安装数据库驱动:(pip install -i https://pypi.douban.com/simple mysqlclient) 数据库连接: 声明到settings.py: 异步入库: 解决异步插入数据库重复插入问题: itemloader提取信息: 1. 追加修改爬取的值 可以增加多个值: …...

网站备案 多ip/免费创建个人博客网站

学习目的及目标 掌握UDP原理和工作过程 掌握乐鑫ESP32的UDP的程序设计 主要掌握UDP源码过程UDP科普(来自百度百科)UDP 是User Datagram Protocol的简称&#xff0c; 中文名是用户数据报协议&#xff0c;是OSI(Open System Interconnection&#xff0c;开放式系统互联) 参考模型…...

成品网站建设咨询/广州广告公司

本来没想弄那么高的版本&#xff0c;一般嵌入式设备都是追求稳定并不是高版本&#xff0c;一般情况都是QT都是4.8版本的。但是之前群里面有小伙伴竟然不会弄&#xff0c;我就开始了交叉编译之路。猛然发现还是蛮痛苦的&#xff0c;用时5天&#xff0c;版子成功运行。目前发现了…...