当前位置: 首页 > 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>…...

使用VSCode开发Django指南

使用VSCode开发Django指南 一、概述 Django 是一个高级 Python 框架&#xff0c;专为快速、安全和可扩展的 Web 开发而设计。Django 包含对 URL 路由、页面模板和数据处理的丰富支持。 本文将创建一个简单的 Django 应用&#xff0c;其中包含三个使用通用基本模板的页面。在此…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

【力扣数据库知识手册笔记】索引

索引 索引的优缺点 优点1. 通过创建唯一性索引&#xff0c;可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度&#xff08;创建索引的主要原因&#xff09;。3. 可以加速表和表之间的连接&#xff0c;实现数据的参考完整性。4. 可以在查询过程中&#xff0c;…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析

这门怎么题库答案不全啊日 来简单学一下子来 一、选择题&#xff08;可多选&#xff09; 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘&#xff1a;专注于发现数据中…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍

文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结&#xff1a; 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析&#xff1a; 实际业务去理解体会统一注…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...