Python字符串类型

news2024/11/27 4:27:30

目录

目标

版本

官方文档

书写格式

字符串合并

常用函数

字母转小写(首字母转大写)

字母转小写(适用于在国际化环境中,忽略字母大小写进行比较的场景)

字母转小写(适用于非国际化环境中,忽略字母大小写进行比较的场景)

字母转大写

字母大写转小写,小写转大写。

字符串填充(原字符串居中)

字符串填充(原字符串居左)

字符串填充(原字符串居右)

字符串填充0(原字符串居右) 

统计出现的字符串次数(不重叠计算)

将字符串转字节序列

后缀是否匹配

前缀是否匹配

替换制表符、换行符、回车符

查询子字符串在原字符串的位置

字符串动态构建

映射对象属性

判断字符串是否只包含字母和数字,且至少包含一个字符。

判断字符串是否只包含字母,且至少包含一个字符。

判断字符串是否都由ASCII字符组成

判断字符串是否由十进制数字组成

判断字符串是否由数字组成(包括非十进制数字)

判断字符串中的字母是否都是小写,且至少包含一个小写字母。

判断字符串是否都由数字组成,且不为空字符串。

检查字符串中的所有字符是否都是可打印字符,或者字符串是否为空。

检查字符串中的所有字符是否都是空白字符,并且至少包含一个字符。

将字符串设置为标题格式

检查字符串是否符合标题格式。

判断字符串中的字母是否都是大写,且至少包含一个大写字母。

将可迭代对象中的字符串连成一个字符串,连接符可以自定义。

去掉字符串两边的空格(默认)和其他字符(如果指定了)

去掉字符串左边的空格(默认)和其他字符(如果指定了)

去掉字符串右边的空格(默认)和其他字符(如果指定了)

翻译表

在字符串中找到第一个指定的分隔符,并返回元组。

剔除字符串开头部分指定的字符串参数

剔除字符串结束部分指定的字符串参数

替换字符串中的子字符串,可配置替换次数(默认替换所有)。

拆分字符串,返回列表。

将字符串按行分隔,返回包含行的列表。


目标

掌握字符串类型的使用方法。本文参考官方文档列举了各种字符串方法的使用方法,如有错误烦请指正。


版本

Python 3.12.0


官方文档

Text Sequence Type — stricon-default.png?t=N7T8https://docs.python.org/3/library/stdtypes.html#text-sequence-type-str


书写格式

官方定义:

  • Single quotes: 'allows embedded "double" quotes'

  • Double quotes: "allows embedded 'single' quotes"

  • Triple quoted: '''Three single quotes'''"""Three double quotes"""

译文:

单引号:单引号可以嵌入双引号,例如:'I "LOVE" YOU'
双引号:双引号可以嵌入单引号,例如:"I 'LOVE' YOU"
三个单引号:例如:'''I LOVE YOU'''
三个双引号:例如:"""I LOVE YOU"""

案例:

print('I "LOVE" YOU')
print("I 'LOVE' YOU")
print('''I LOVE YOU''')
print("""I LOVE YOU""")

注意:

Python中,三个引号有两个作用:

  • 使用三引号可以在一个字符串中包含多行文本。
  • 三个引号可以写下多行注释
'''
输出:
I
LOVE
YOU

'''
print('''I 
LOVE 
YOU
''')

"""
输出:
I 
LOVE 
YOU

"""
print("""I 
LOVE 
YOU
""")

字符串合并

情景一

字符串之间只有空格,则会隐式地转换为单个字符串。

案例

a="123"   "456"
b="123456"
#返回:True 1805713063440 1805713063440
print(a==b,id(a),id(b))

情景二

字符串用+连接。

案例

a="123456"
b="123"+"456"
#返回:True 2281180461648 2281180461648
print(a==b,id(a),id(b))

情景三

%s连接。

a = "123"
b = "456"
#返回:123456
result = "%s%s" % (a, b)
print(result)

情景四

{}连接。

a = "123"
b = "456"
#返回:123456
result = "{}{}".format(a,b)
print(result)

情景五

在字符串前加f引用变量

a = "123"
b = "456"
#返回:123456
result = f"{a}{b}"
print(result)

情景六

使用join方法将列表中的元素拼接成一个字符串。

a = ["123","456"]
result = "".join(a)
#返回:123456 <class 'str'>
print(result,type(result))

常用函数

字母转小写(首字母转大写)

转换后的字符串是一个新的字符串。从下面案例中的id值可以看出。

案例

#输出:I love you.
print("I LOVE YOU.".capitalize())
#输出:I love you.
print("i love you.".capitalize())

a="I love you."
b=a.capitalize()
#输出:I love you. I love you. 2532951714032 2532951257840
print(a,b,id(a),id(b))

字母转小写(适用于在国际化环境中,忽略字母大小写进行比较的场景)

该方法的实现遵循Unicode标准中描述的大小写折叠算法。可以将特殊字符转换为小写形式,比lower()函数更为彻底。

案例

a="I LOVE YOU.".casefold()
b="I love you.".casefold()
#输出:i love you. i love you. True 2692128699120 2692128698480
print(a,b,a==b,id(a),id(b))

c="ß".casefold()
d="ss"
#输出:True
print(c==d)

字母转小写(适用于非国际化环境中,忽略字母大小写进行比较的场景)

案例

a="I LOVE YOU."
#输出:i love you.
print(a.lower())

字母转大写

案例

a="i love you."
#输出:I LOVE YOU.
print(a.upper())

字母大写转小写,小写转大写。

 案例

a = "Hello world!"
#输出:hELLO WORLD!
print(a.swapcase())

字符串填充(原字符串居中)

center(width,fillchar)函数有两个参数。它的作用是:将原始字符串居中放置在长度为width的字符串中,并使用字符fillchar进行填充。fillchar默认为空格。如果原字符串长度大于或等于width,则没有fillchar进行填充。

案例

a="123".center(10)
#输出:   123     长度: 10
print(a,"长度:",len(a))
#输出:---123---- 长度: 10
b="123".center(10,"-")
print(b,"长度:",len(b))

字符串填充(原字符串居左)

类比center函数。

案例

a="123".ljust(10)
#输出:123        长度: 10
print(a,"长度:",len(a))
#输出:123------- 长度: 10
b="123".ljust(10,"-")
print(b,"长度:",len(b))

字符串填充(原字符串居右)

类比center函数。

案例

a="123".rjust(10)
#输出:       123 长度: 10
print(a,"长度:",len(a))
#输出:-------123 长度: 10
b="123".rjust(10,"-")
print(b,"长度:",len(b))

字符串填充0(原字符串居右) 

案例

a = "1"
#输出:00001 <class 'str'>
print(a.zfill(5),type(a.zfill(5)))

b = "-9"
#输出:-0009 <class 'str'>
print(b.zfill(5),type(b.zfill(5)))

c= "hello"
#输出:000hello <class 'str'>
print(c.zfill(8),type(c.zfill(8)))

#输出:hello <class 'str'>
print(c.zfill(2),type(c.zfill(2)))

统计出现的字符串次数(不重叠计算)

案例

a="I LOVE YOU."
#输出:1
#分析:在I LOV中寻找LOV,看一共出现了几次。
print(a.count("LOV",0,5))

b="1111"
#输出:2
#分析:在1111中寻找11出现的次数。特别注意,这个函数不会重叠计算,所以中间两个1不会统计。
print(b.count("11",0, len(b)))

将字符串转字节序列

案例

a="你好,世界!"
#将字符串编码为字节序列(默认使用UTF-8编码)
by = a.encode()
#输出:b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c\xef\xbc\x81' <class 'bytes'>
print(by,type(by))

#指定编码方式为'UTF-8',将字符串编码为字节序列
by2 = a.encode(encoding='UTF-8')
#输出:b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c\xef\xbc\x81' <class 'bytes'>
print(by2,type(by2))

后缀是否匹配

案例

a="123"
#输出:True
print(a.endswith("23"))

前缀是否匹配

案例

a="123"
#输出:False
print(a.startswith("23"))

替换制表符、换行符、回车符

案例

a= "hello\tworld.\nhello\rPython."
'''
分析:\t表示制表符;\n表示换行符;\r表示回车符。回车符会使得前一个元素消失。所以第二个hello没有打印出来。
输出:
hello   world.
Python.
'''
print(a.expandtabs())

b= "hello\tworld"
#输出:hello           world
#分析:一个制表符用16个空格代替。
print(b.expandtabs(tabsize=16))

查询子字符串在原字符串的位置

案例一(从左边开始寻找)

调用find函数查找子字符串,找不到会返回-1。

index = "hello python".find("python")
#输出:6
#分析:下标从0开始寻找,python在字符串的第7位
print(index)

index2 = "hello python python".find("python",7,64)
#输出:13
#分析:下标从7开始寻找,python在字符串的第13位
print(index2)

index = "hello python".find("world")
#输出:-1
#分析:字符串不包含world
print(index)

案例二(从右边开始寻找)

index = "hello python".rfind("python")
#输出:6
#分析:python在字符串的第7位出现。
print(index)

index2 = "hello python python python".rfind("python",0,15)
#输出:6
#分析:在0至15之间寻找python,python在字符串的第6位出现。
print(index2)

index = "hello python".rfind("world")
#输出:-1
#分析:字符串不包含world
print(index)

案例三(从左边开始寻找)

调用index函数查找子字符串,找不到会报错。

a = "hello world world world world"
#输出:索引位置: 6
print("索引位置:", a.index("world"))
#输出:索引位置: 18
#分析:从第15位开始寻找,第一次出现world的位置是19位。
print("索引位置:", a.index("world",15))
#输出:索引位置: 24
#分析:从第19位开始寻找,第一次出现world的位置是25位。
print("索引位置:", a.index("world",19, len(a)))

b = "hello world"
try:
    index = b.index("Python")
    print("索引位置:", index)
except ValueError as e:
    #输出:未找到子串: substring not found
    print("未找到子串:", e)

案例四(从右边开始寻找)

 调用rindex函数查找子字符串,找不到会报错。

a = "hello world world world world"
#输出:索引位置: 24
print("索引位置:", a.rindex("world"))
#输出:索引位置: 24
print("索引位置:", a.rindex("world",15))
#输出:索引位置: 12
print("索引位置:", a.rindex("world",5,19))

b = "hello world"
try:
    index = b.rindex("Python")
    print("索引位置:", index)
except ValueError as e:
    #输出:未找到子串: substring not found
    print("未找到子串:", e)

字符串动态构建

案例

a = "I love you {} times {} day."
b=a.format(3000,"a")
#输出:I love you 3000 times a day.
print(b)

映射对象属性

案例

#定义一个字典子类作为映射
class Student(dict):
    def __missing__(self, key):
        return f"Key {key} not found"

#创建一个字典子类的实例
mapping = Student({'name': 'zhangsan', 'age': 30})
template = "I am {name} , I am {age} years old, I LOVE {obj}."
#格式化
formatted_string = template.format_map(mapping)
#输出:I am zhangsan , I am 30 years old, I LOVE Key obj not found.
print(formatted_string)

判断字符串是否只包含字母和数字,且至少包含一个字符。

案例

a = "abc"
b="I LOVE YOU."
c="123"
d=""
#输出:True False True False
#b含有空格和.所以返回False
#d不符合至少有一个字符的条件,所以返回False
print(a.isalnum(),b.isalnum(),c.isalnum(),d.isalnum())

判断字符串是否只包含字母,且至少包含一个字符。

案例

a = "abc"
b="I LOVE YOU."
c="123"
d=""
#输出:True False False False
#b含有空格和.所以返回False
#c不是字母组成的字符串。
#d不符合至少有一个字符的条件,所以返回False
print(a.isalpha(),b.isalpha(),c.isalpha(),d.isalpha())

判断字符串是否都由ASCII字符组成

案例

a = "Hello World!"
b = "Hello世界!"
c=""
#输出:True False
#分析:a中所有元素由ASCII字符组成。b字符串中不全是ASCII表中的字符,所以返回False。当字符串为空字符串时,该方法也返回True。
print(a.isascii(),b.isascii(),c.isascii())

判断字符串是否由十进制数字组成

案例

a = "Hello World!"
b = "3.14"
c="10086"
d=""
#输出:False False True False
print(a.isdecimal(),b.isdecimal(),c.isdecimal(),d.isdecimal())

判断字符串是否由数字组成(包括非十进制数字)

案例

a = "Hello World!"
b = "3.14"
c="10086"
d=""
#输出:False False True False
print(a.isdigit(),b.isdigit(),c.isdigit(),d.isdigit())

判断字符串中的字母是否都是小写,且至少包含一个小写字母。

注意

  1. 这里只判断字符串中的字母部分,非字母部分不做判断。
  2. 如果字符串中没有一个字母,则返回False。
  3. 空字符串返回False。

案例

a = "Hello World!"
b = "hi"
c="a,b,c"
d="www.hao123.com"
e=""
f="123"
#输出:False True True True False False
print(a.islower(),b.islower(),c.islower(),d.islower(),e.islower(),f.islower())

判断字符串是否都由数字组成,且不为空字符串。

包括:普通数字字符和具有Unicode数值属性的所有字符。

案例

a = "Hello World!"
b = "123"
c="3.14"
d="-1"
e=""
#输出:False True False False False
print(a.isnumeric(),b.isnumeric(),c.isnumeric(),d.isnumeric(),e.isnumeric())

检查字符串中的所有字符是否都是可打印字符,或者字符串是否为空。

a = "Hello \n World!"
b = "123\t"
c="3.14\r"
d="-1"
e=""
#输出:False False False True True
print(a.isprintable(),b.isprintable(),c.isprintable(),d.isprintable(),e.isprintable())

检查字符串中的所有字符是否都是空白字符,并且至少包含一个字符。

案例

a = "Hello World!"
b = " "
c="\t"
d="\n"
e=""
#输出:False True True True False
print(a.isspace(),b.isspace(),c.isspace(),d.isspace(),e.isspace())

将字符串设置为标题格式

案例

a = "hello world"
b = a.title()
#输出: Hello World
print(b)

检查字符串是否符合标题格式。

标题格式

  1. 字符串中的每个单词的首字母必须是大写。
  2. 其余字母必须是小写。
  3. 并且单词之间只能由空格分隔

案例

a = "Hello World!"
b = "Hello \n World!"
c="USA"
d=""
#输出:True True False False
print(a.istitle(),b.istitle(),c.istitle(),d.istitle())

判断字符串中的字母是否都是大写,且至少包含一个大写字母。

注意

  1. 这里只判断字符串中的字母部分,非字母部分不做判断。
  2. 如果字符串中没有一个字母,则返回False。
  3. 空字符串返回False。

案例

a = "Hello World!"
b = "HI"
c="C,B,A"
d="www.hao123.com"
e=""
f="123"
#输出:False True True False False False
print(a.isupper(),b.isupper(),c.isupper(),d.isupper(),e.isupper(),f.isupper())

将可迭代对象中的字符串连成一个字符串,连接符可以自定义。

注意:如果可迭代对象中的元素包含非字符串,则程序报错。

案例

a = ["I", "LOVE", "Python"]
b="\t".join(a)
#输出:I	LOVE	Python <class 'str'>
print(b,type(b))

去掉字符串两边的空格(默认)和其他字符(如果指定了)

案例

a=" hello world. "
#输出:hello world.
print(a.strip())

b=" hello world. "
#输出:ello world
print(b.strip(" h.l"))

去掉字符串左边的空格(默认)和其他字符(如果指定了)

案例

a=" 1 2 3 "
b=" I LOVE YOU . "
#输出:LOVE YOU .
c=b.lstrip(" I")
print(c)
#输出:1 2 3
d=a.lstrip(" ")
print(d)
#输出:1 2 3
e=a.lstrip()
print(e)

去掉字符串右边的空格(默认)和其他字符(如果指定了)

案例

a=" 1 2 3 "
b=" I LOVE YOU . "
#输出: I LOVE YOU
c=b.rstrip(". ")
print(c)
#输出: 1 2 3
d=a.rstrip(" ")
print(d)
#输出: 1 2 3
e=a.rstrip()
print(e)

翻译表

案例

#创建翻译表,将数字转换为对应的中文数字
translationTable = str.maketrans("0123456789", "零一二三四五六七八九")

#使用翻译表进行转换
a = "996"
b = a.translate(translationTable)
#输出:九九六
print(b)

#创建翻译表,将小写字母转换为大写字母
translationTable = str.maketrans("abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")

#使用翻译表进行转换
word = "i love you."
capitalizedWord = word.translate(translationTable)
#输出:I LOVE YOU.
print(capitalizedWord)

在字符串中找到第一个指定的分隔符,并返回元组。

返回的元组一共有三个元素,三个元素含义如案例所示。

案例一(从左边开始寻找)

a="www.hao123.com"
result=a.partition(".")

"""
第一个.是在www之后,所以元组的第一个元素是www,第二个元素是.第三个元素是hao123.com
可以看到,result的类型是元组类型。
"""
#输出:('www', '.', 'hao123.com') <class 'tuple'>
print(result,type(result))


result=a.partition("!")
#输出:('www.hao123.com', '', '') <class 'tuple'>
print(result,type(result))

 案例二(从右边开始寻找)

a="www.hao123.com"
result=a.rpartition(".")
#输出:('www.hao123', '.', 'com') <class 'tuple'>
print(result,type(result))

result=a.rpartition("!")
#输出:('', '', 'www.hao123.com') <class 'tuple'>
print(result,type(result))

剔除字符串开头部分指定的字符串参数

案例

a="##123"
b=a.removeprefix("##")
c=a.removeprefix("###")

#输出:##123 1812850244176
print(a,id(a))
#输出:123 1812850335424
#分析:可以看出b是个新字符串。
print(b,id(b))
#输出:##123 1812850244176
#分析:返回原字符串,c不是一个新字符串。
print(c,id(c))

剔除字符串结束部分指定的字符串参数

案例

a="123##"
b=a.removesuffix("##")
c=a.removesuffix("###")

#输出:123## 2665880255056
print(a,id(a))
#输出:123 2665880346304
#分析:可以看出b是个新字符串。
print(b,id(b))
#输出:123## 2665880255056
#分析:返回原字符串,c不是一个新字符串。
print(c,id(c))

替换字符串中的子字符串,可配置替换次数(默认替换所有)。

案例

a="I LOVE JAVA."
b="I have two apples and two oranges."
#输出:I LOVE Python.
c= a.replace("JAVA", "Python")
print(c)
#输出:I have three apples and two oranges.
#分析:第三个参数位1,表示只替换第一次出现的two位three。
d= b.replace("two", "three",1)
print(d)

拆分字符串,返回列表。

rsplit(sep,maxsplit)右边开始拆分字符串,split(sep,maxsplit)左边开始拆分字符串。两个方法都返回包含拆分后的子字符串的列表。它们有两个参数:

  1. sep表示分隔符号,默认空格。
  2. maxsplit表示最大分隔次数,默认-1表示最大分隔。

案例(这里以rsplit(sep,maxsplit)为例,split(sep,maxsplit)和其不同点在于拆分顺序不同。)

#默认用空格分隔,默认分隔次数最大。
#输出:['Dog', 'Cat', 'Elephant', 'Lion', 'Tiger', 'Giraffe', 'Monkey', 'Kangaroo', 'Penguin', 'Dolphin']
animal = "Dog Cat Elephant Lion Tiger Giraffe Monkey Kangaroo Penguin Dolphin"
animalList = animal.rsplit()
print(animalList)

#输出:['Apple', 'Banana', 'Orange', 'Strawberry', 'Mango', 'Pineapple', 'Watermelon', 'Grapes', 'Blueberry', 'Peach']
fruit = "Apple,Banana,Orange,Strawberry,Mango,Pineapple,Watermelon,Grapes,Blueberry,Peach"
fruitList = fruit.rsplit(',')
print( fruitList)

#指定最大拆分次数
#输出:['Carrot Broccoli Spinach,Tomato Potato Cucumber', 'Onion', 'Cauliflower', 'Peas']
vegetable = "Carrot Broccoli Spinach,Tomato Potato Cucumber Onion Cauliflower Peas"
vegetableList = vegetable.rsplit(maxsplit=3)
print( vegetableList)

#输出:['Emma,Liam,Olivia,Noah,Sophia,Jackson,Ava', 'Lucas', 'Isabella', 'Oliver']
name = "Emma,Liam,Olivia,Noah,Sophia,Jackson,Ava,Lucas,Isabella,Oliver"
nameList = name.rsplit(',',maxsplit=3)
print( nameList)

将字符串按行分隔,返回包含行的列表。

splitlines(keepends)方法中keepends默认为False,表示返回的列表中不包含分隔符号,设置为True表示包含分隔符。中以下是官方文档规定的符号,注意:在版本3.2中进行了更改,加入了\v和\f

RepresentationDescription翻译
\nLine Feed换行符
\rCarriage Return回车
\r\nCarriage Return + Line Feed回车+换行
\v or \x0bLine Tabulation行表格
\f or \x0cForm Feed换页
\x1cFile Separator文件分隔符
\x1dGroup Separator组分隔符
\x1eRecord Separator记录分隔符
\x85Next Line (C1 Control Code)下一行(C1控制代码)
\u2028Line Separator行分隔符
\u2029Paragraph Separator段落分隔符

案例

#输出:['Dog', 'Cat', 'Elephant', 'Lion']
animal = "Dog\nCat\nElephant\nLion"
animalList = animal.splitlines()
print(animalList)

#输出:['Apple\n', 'Banana\r\n', 'Orange\u2028', 'Strawberry']
fruit = "Apple\nBanana\r\nOrange\u2028Strawberry"
fruitList = fruit.splitlines(True)
print( fruitList)

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

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

相关文章

在计算机领域如神一般存在的人都有哪些?

✍️作者简介&#xff1a;沫小北/码农小北&#xff08;专注于Android、Web、TCP/IP等技术方向&#xff09; &#x1f433;博客主页&#xff1a;沫小北/码农小北 开源中国、稀土掘金、51cto博客、博客园、知乎、简书、慕课网、CSDN &#x1f514;如果文章对您有一定的帮助请&…

IDEA远程一键部署SpringBoot到Docker

IDEA是Java开发利器&#xff0c;Spring Boot是Java生态中最流行的微服务框架&#xff0c;docker是时下最火的容器技术&#xff0c;那么它们结合在一起会产生什么化学反应呢&#xff1f; 一、开发前准备 1. Docker安装 可以参考&#xff1a;https://docs.docker.com/install/ 2…

(C语言)输入一个序列,判断是否为奇偶交叉数

#include <stdio.h> #include <string.h> int main() {char str[50];gets(str);int len,tmp 1;len strlen(str); //获取字符串长度 for (int i 0;i < len-1 ;i ){if((str[i] % 2 0 ) && (str[i1] % 2 ! 0)) //判断先偶数后奇数序列 tmp ;else if((s…

fiddler展示接口的响应时间

最近项目组迁移了一个新项目&#xff0c;想对比迁移前后访问菜单的响应时间是否有变化&#xff0c;因为没需求文档&#xff0c;所以只有靠fiddler一个个的抓接口来看&#xff0c;开发经理想要看具体每个接口耗时&#xff0c;虽然点击接口&#xff0c;在页面上也能看到接口响应时…

操作指南|JumpServer堡垒机支持通过Passkey进行登录认证

伴随着互联网应用的深度普及&#xff0c;用户账户安全的重要性不言而喻。密码是目前互联网用户保护在线账户安全和隐私的主要手段。然而&#xff0c;传统密码技术本身也存在着一些缺陷。 首先&#xff0c;密码是由用户创建的&#xff0c;用户通常会出于易用性而非实际的安全性…

Pytorch D2L Subplots方法对画图、图片处理

问题代码 def show_images(imgs, num_rows, num_cols, titlesNone, scale1.5): #save """绘制图像列表""" figsize (num_cols * scale, num_rows * scale) _, axes d2l.plt.subplots(num_rows, num_cols, figsizefigsize) axes axes.flatten…

Flink(六)【DataFrame 转换算子(下)】

前言 今天学习剩下的转换算子。 1、物理分区算子 常见的物理分区策略有随机分配&#xff08;Random&#xff09;、轮询分配&#xff08;Round-Robin&#xff09;、重缩放&#xff08;Rescale&#xff09;和广播&#xff08;Broadcast&#xff09;&#xff0c;下边我们分别来做…

科创人·蓝凌董事长杨健伟:夯实“四梁八柱”,让数字化“城中村上建高楼”

杨健伟 蓝凌软件董事长 长江商学院EMBA、数字化转型专家、深圳市企业联合会副会长、清华英赛克管理学博士。 “越来越多的企业家在谈数字化转型&#xff0c;软件行业需要思考CIO如何跟CEO对话&#xff0c;这是很大的挑战”&#xff0c;杨健伟在数智2023蓝凌用户大会上的这番话&…

openssl1.0.2版本Windows安装问题

之前安装过1.1版本&#xff0c;Windows环境下C 安装OpenSSL库 源码编译及使用&#xff08;VS2019&#xff09;_vs2019安装openssl_肥宝Fable的博客-CSDN博客 后来发现linux编译不过&#xff0c;以为是版本问题&#xff0c;相差太大&#xff0c;所以降一下版本&#xff0c;以免…

Python基础入门----如何通过conda搭建Python开发环境

文章目录 使用 conda 搭建Python开发环境是非常方便的,它可以帮助你管理Python版本、依赖库、虚拟环境等。以下是一个简单的步骤,演示如何通过 conda 搭建Python开发环境: 安装conda: 如果你还没有安装 conda,首先需要安装Anaconda或Miniconda。Anaconda是一个包含很多数据…

Kafka 集群如何实现数据同步?

哈喽大家好&#xff0c;我是咸鱼 最近这段时间比较忙&#xff0c;将近一周没更新文章&#xff0c;再不更新我那为数不多的粉丝量就要库库往下掉了 T﹏T 刚好最近在学 Kafka&#xff0c;于是决定写篇跟 Kafka 相关的文章&#xff08;文中有不对的地方欢迎大家指出&#xff09;…

电磁场与电磁波part2--电磁场的基本规律

1、电流连续性方程的微分形式 表明时变电流场是有散场&#xff0c;电流线是由电荷随时间变化的地方发出或终止的&#xff0c;在正电荷随时间减小的地方就会发出电流线&#xff0c;在正电荷随时间增加的地方就会终止电流线。 2、任何一个标量函数的梯度再求旋度时恒等于零&#…

洗地机选购攻略,洗地机哪个品牌好?一篇教会你挑到好用的洗地机

随着国内生活水平的提高&#xff0c;智能清洁产品的呼声也越来越高&#xff0c;尤其是洗地机&#xff0c;可以说是国内各个品牌的洗地机铺天盖地而来&#xff0c;那么如何挑选洗地机成了很多新手的困惑&#xff0c;别着急&#xff0c;笔者今天就给大家讲讲洗地机! 一、购买洗地…

【Vue全家桶 合集 关注收藏】

【Vue全家桶】全面了解学习并实践总结Vue必备知识点 写在前面 &#x1f917; 这里是SuperYi Vue全家桶合集站&#xff01; &#x1f33b; 人海茫茫&#xff0c;感谢这一秒你看到这里。希望我的文章对你的有所帮助&#xff01; &#x1f31f; 愿你在未来的日子&#xff0c;保持…

【STM32外设系列】NRF24L01无线收发模块

&#x1f380; 文章作者&#xff1a;二土电子 &#x1f338; 关注公众号获取更多资料&#xff01; &#x1f438; 期待大家一起学习交流&#xff01; 文章目录 一、NRF24L01简介1.1 什么是NRF24L011.2 NRF24L01引脚介绍1.3 NRF24L01工作模式1.4 NRF24L01的SPI时序1.5 Enhanc…

图解分布式事务实现原理(三)

参考 本文参考https://zhuanlan.zhihu.com/p/650791238从零到一搭建 TCC 分布式事务框架&#xff0c;并在小徐的基础上增加个人见解笔记。 项目地址&#xff1a;https://github.com/xiaoxuxiansheng/gotcc 图解分布式事务实现原理&#xff08;一&#xff09;&#xff1a;https…

Kubernetes学习-概念2

参考&#xff1a;关于 cgroup v2 | Kubernetes 关于 cgroup v2 在 Linux 上&#xff0c;控制组约束分配给进程的资源。 kubelet 和底层容器运行时都需要对接 cgroup 来强制执行为 Pod 和容器管理资源&#xff0c; 这包括为容器化工作负载配置 CPU/内存请求和限制。 Linux 中…

CentOs 7 PHP安装和配置

目录 1 安装epel源 2 安装REMI源 3 安装yum源管理工具 4 安装PHP7.3 5 启动php服务 6 设置PHP 6.1 查找安装包 6.2 查找PHP安装位置 6.3 查找php配置文件位置 6.4 配置PHP 6.5 设置快捷命令 6.6 查看php版本 6.7 更新php 1 安装epel源 yum -y install epel-release 2 安…

这次轮到微软炸场了;5000+AI工具调研报告 (500万字);狂打一星开喷AI聊天机器人;CMU LLM课程;AI创业的方向与时机 | ShowMeAI日报

&#x1f440;日报&周刊合集 | &#x1f3a1;生产力工具与行业应用大全 | &#x1f9e1; 点赞关注评论拜托啦&#xff01; &#x1f251; Microsoft Ignite 2023 技术大会&#xff1a;微软的年度炸场时刻&#xff0c;而且连炸四天 https://ignite.microsoft.com OpenAI 开发…

【ARM Trace32(劳特巴赫) 使用介绍 2.2 -- TRACE32 进阶命令之 DIAG 弹框命令】

请阅读【ARM Coresight SoC-400/SoC-600 专栏导读】 上篇文章&#xff1a;【ARM Trace32(劳特巴赫) 使用介绍 2.1 – TRACE32 Practice 脚本 cmm 脚本学习】 下篇文章&#xff1a;【ARM Trace32(劳特巴赫) 使用介绍 3 - trace32 访问运行时的内存】 文章目录 DIALOG.OK 命令DIA…