Python-VBA函数之旅-ascii函数

        ascii函数在Python中主要用于将对象(特别是字符和字符串)转换为它们的ASCII表示形式。这种转换在处理文本数据、调试代码以及确保文本以 ASCII 格式存储或传输时非常有用。常见应用场景有:

1、调试和文本处理:当处理包含非ASCII字符(如Unicode字符)的文本时,ascii()函数可以帮助你查看这些字符的ASCII表示形式。这对于识别和理解文本中的特殊字符或不可见字符(如控制字符)特别有用。

2、代码示例和文档:在编写代码示例或文档时,有时需要展示一个字符或字符串的ASCII表示。使用ascii()函数可以方便地生成这种表示,而无需手动编写转义序列。

3、数据清洗和规范化:在处理文本数据时,有时候需要将非ASCII字符替换为对应的ASCII字符,以便进行数据清洗和规范化。ascii()函数可以帮助我们实现这一目标,使得数据更易于处理和分析。

4、文本过滤和清理:如果你需要从文本中删除或替换非ASCII字符,可以使用ascii()函数结合其他字符串处理方法来实现。例如,你可以使用正则表达式结合ascii()函数来识别并处理非ASCII字符。

5、跨平台兼容性:在某些情况下,你可能需要确保文本数据在不同的平台或环境中都能正确解析。使用ascii()函数可以帮助你确保文本数据以兼容的方式表示,特别是在处理可能包含平台特定字符或编码的文本时。

6. 加密和解密:ASCII函数在某些简单的加密和解密算法中有所应用。通过将字符转换为ASCII码值,然后对这些值进行某种形式的变换(如位移、替换等),可以实现简单的加密。解密过程则是加密的逆操作,通过相同的变换将ASCII码值转换回字符。

7、网络编程:在编写涉及网络通信的代码时,有时需要确保发送或接收的数据只包含ASCII字符,因为某些协议或系统可能只支持ASCII字符集。在这种情况下,你可以使用ascii()函数来转换或验证数据。

        需要注意的是,ascii()函数主要用于获取对象的ASCII表示形式,而不是用于编码或解码文本数据。如果你需要将文本数据编码为ASCII格式并处理非ASCII字符(如替换或忽略它们),应该使用字符串的".encode()"方法,并指定适当的错误处理策略(如"ignore" 或 "replace")。

        此外,对于大多数现代应用来说,使用Unicode(通常是UTF-8编码)来处理文本数据更为常见和推荐,因为它支持更广泛的字符集和跨平台兼容性。但在某些特定场景下,ascii()函数仍然是一个有用的工具。

1、ascii函数:
1-1、Python:
# 1.函数:ascii
# 2.功能:将一个对象转换为其可打印的ASCII表示形式
# 3.语法:ascii(object)
# 4.参数:Python中主要的内置对象类型,包括但不限于以下类型:
# 4-1、 数字类型:
#    - `int`(整型):用于表示整数,如 `1`, `100`, `-8080` 等
#    - `float`(浮点型):用于表示浮点数,即带小数点的数字,如 `1.23`, `0.0`, `-99.9` 等
#    - `complex`(复数型):用于表示复数,如 `3+6j`
# 4-2、 序列类型:
#    - `list`(列表):有序的元素集合,元素之间用逗号分隔,整个列表由方括号包围。例如:`[1, 2, 3, 'a', 'b', 'c']`
#    - `tuple`(元组):与列表类似,但元素不能修改。例如:`(1, 2, 3)`
#    - `str`(字符串):字符序列。例如:`"Hello, world!"`
#    - `bytes`:字节序列,常用于处理二进制数据
#    - `bytearray`:可变字节序列
# 4-3、 集合类型:
#    - `set`(集合):无序且不包含重复元素的集合。例如:`{1, 2, 3}`
#    - `frozenset`(冻结集合):不可变的集合,与set类似,但内容不能修改
# 4-4、 映射类型:
#    - `dict`(字典):无序的键值对集合。例如:`{'name': 'myelsa', 'age': 43}`
# 4-5、布尔类型:
#    - `bool`:布尔值,只有两个值 `True` 和 `False`
# 4-6、 特殊类型:
#    - `NoneType`:只有一个值 `None`,表示空或无值的状态
#    - `ellipsis`:表示省略号对象,通常用三个点 `...` 表示
#    - `notimplemented`:一个特殊的单例值,当对象不支持某个操作时返回此值
# 4-7、其他类型:
#    - `type`:用于表示类型对象本身
#    - `range`:表示一个不可变的数字序列范围
#    - `memoryview`:内存中的字节序列的“窗口”或“视图”
#    - `slice`:表示切片对象,用于在序列类型上切片
#    - `enum.Enum`(通过`enum`模块):枚举类型,表示一组具名的常量
#    - `functions`、`methods`、`class objects`、`instances` 等:函数、方法、类对象、实例对象等
#    - `module`:模块对象
#    - `file`:文件对象
#    - `traceback`、`frame` 和 `code` 对象:用于表示调用栈、帧和代码对象
# 5.返回值:返回一个表示该对象的字符串,这个字符串包含对象的可打印ASCII字符的表示形式
# 6.说明:
# 6-1、使用ascii()函数时,要注意它只返回对象的可打印ASCII字符表示形式,并且不是所有对象都有有意义的ASCII表示
# 6-2、ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)
# 7.示例:
# 应用1:调试和文本处理
def custom_ascii(s):# 将字符串转换为ASCII表示形式ascii_repr = ascii(s)# 添加调试信息debug_info = f"String length: {len(s)}  \nASCII representation:{ascii_repr}"# 返回ASCII表示形式和调试信息return debug_info
# 主函数
if __name__ == '__main__':text = "人生苦短, 我用python!"ascii_debug_info = custom_ascii(text)print(ascii_debug_info)
# String length: 15
# ASCII representation:'\u4eba\u751f\u82e6\u77ed, \u6211\u7528python!'# 应用2:代码示例和文档
def formatted_ascii(obj):"""返回对象的格式化ASCII表示形式,以便用于代码示例和文档。参数:obj(any): 要转换的对象。返回:str: 对象的格式化ASCII表示形式的字符串。"""ascii_repr = ascii(obj)# 格式化ASCII字符串,比如添加换行符以便阅读formatted_repr = ascii_repr.replace("'", "").replace(",", ",\n    ").strip()return formatted_repr
# 主函数
if __name__ == '__main__':example_list = [1, 2, 3, 'a', 'b', 'c']example_dict = {'name': 'myelsa', 'age': 43}# 使用formatted_ascii函数展示列表的ASCII表示print("列表的ASCII表示:")print(formatted_ascii(example_list))# 使用formatted_ascii函数展示字典的ASCII表示print("\n字典的ASCII表示:")print(formatted_ascii(example_dict))
# 列表的ASCII表示:
# [1,
#      2,
#      3,
#      a,
#      b,
#      c]
#
# 字典的ASCII表示:
# {name: myelsa,
#      age: 43}# 应用3:数据清洗和规范化
def custom_ascii(s, keep_ascii_only=False):# 如果keep_ascii_only为True,则只保留ASCII字符if keep_ascii_only:s = ''.join(c for c in s if ord(c) < 128)# 将字符串转换为ASCII表示形式ascii_repr = ascii(s)# 添加调试信息debug_info = f"Original string: {s}   \nASCII-only string: {s if not keep_ascii_only else ''}  \nASCII representation:{ascii_repr}"# 返回ASCII表示形式和调试信息return debug_info
# 主函数
if __name__ == '__main__':# 保留ASCII字符text_with_non_ascii = "人生苦短, 我用python!"ascii_debug_info_keep_ascii = custom_ascii(text_with_non_ascii, keep_ascii_only=True)print(ascii_debug_info_keep_ascii)
# Original string: , python!
# ASCII-only string:
# ASCII representation:', python!'# 应用4:加密和解密
def encrypt_with_ascii(plaintext, offset):"""使用ASCII值和给定的偏移量加密明文。参数:plaintext(str): 要加密的明文。offset(int): 应用于每个字符ASCII值的偏移量。返回:str: 加密后的密文。"""# 初始化空字符串来保存加密后的字符ciphertext = ""# 遍历明文中的每个字符for char in plaintext:# 获取字符的ASCII值ascii_value = ord(char)# 应用偏移量encrypted_ascii_value = (ascii_value + offset) % 256  # 使用模运算来确保值在0-255之间# 将加密后的ASCII值转换回字符encrypted_char = chr(encrypted_ascii_value)# 将加密后的字符添加到密文字符串中ciphertext += encrypted_charreturn ciphertext
# 主函数
if __name__ == '__main__':plaintext = "Hello,Python!"offset = 43  # 可以选择任何整数作为偏移量# 加密明文encrypted_text = encrypt_with_ascii(plaintext, offset)print(f"加密后的文本: {encrypted_text}")
# 解密密文需要知道相同的偏移量
def decrypt_with_ascii(ciphertext, offset):"""使用相同的ASCII值和偏移量解密密文。参数:ciphertext(str): 要解密的密文。offset(int): 用于加密的相同偏移量。返回:str: 解密后的明文。"""# 初始化空字符串来保存解密后的字符plaintext = ""# 遍历密文中的每个字符for char in ciphertext:# 获取字符的ASCII值ascii_value = ord(char)# 应用相反的偏移量来解密decrypted_ascii_value = (ascii_value - offset) % 256# 将解密后的ASCII值转换回字符decrypted_char = chr(decrypted_ascii_value)# 将解密后的字符添加到明文字符串中plaintext += decrypted_charreturn plaintext
# 主函数
if __name__ =='__main__':# 解密密文decrypted_text = decrypt_with_ascii(encrypted_text, offset)print(f"解密后的文本: {decrypted_text}")
# 加密后的文本: sW{¤L
# 解密后的文本: Hello,Python!# 应用5:网络编程
def encode_to_ascii(data):"""将字符串编码为ASCII字节流。参数:data(str): 要编码的字符串。返回:bytes: 编码后的ASCII字节流。"""# 使用'ascii'编码将字符串转换为字节流ascii_bytes = data.encode('ascii')return ascii_bytes
# 主函数
if __name__ == '__main__':text_to_send = "Hello, Python!"encoded_text = encode_to_ascii(text_to_send)print(f"Encoded text: {encoded_text}")
def decode_from_ascii(data):"""将ASCII字节流解码为字符串。参数:data(bytes): 要解码的ASCII字节流。返回:str: 解码后的字符串。"""# 使用'ascii'编码将字节流解码为字符串ascii_str = data.decode('ascii')return ascii_str
# 主函数
if __name__ == '__main__':received_data = b'Hello, Python!'decoded_text = decode_from_ascii(received_data)print(f"Decoded text: {decoded_text}")
import socket
def start_server():server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)server_socket.bind(('localhost', 10248))server_socket.listen(1)print("Server started, listening on port 10248...")while True:client_socket, client_address = server_socket.accept()print(f"Connection from {client_address}")# 接收数据received_data = client_socket.recv(1024)decoded_text = decode_from_ascii(received_data)print(f"Received: {decoded_text}")# 发送响应response = "Message received!"encoded_response = encode_to_ascii(response)client_socket.sendall(encoded_response)client_socket.close()
# 主函数
if __name__ == "__main__":start_server()
def start_client():client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)client_socket.connect(('localhost', 10248))# 发送数据message = "Hello from client!"encoded_message = encode_to_ascii(message)client_socket.sendall(encoded_message)# 接收响应response_data = client_socket.recv(1024)decoded_response = decode_from_ascii(response_data)print(f"Received response: {decoded_response}")client_socket.close()
# 主函数
if __name__ == "__main__":start_client()
# Encoded text: b'Hello, Python!'
# Decoded text: Hello, Python!
# Server started, listening on port 10248...
1-2、VBA:
' 1.函数:Asc
' 2.功能:提取字符串中第一个字符的ASCII编码值
' 3.语法:Asc(string)
' 4.参数:
' 4-1、 string是必需的参数,表示要返回其ASCII值的字符或字符串表达式
' 4-2、 如果string包含多个字符,Asc函数仅返回第一个字符的ASCII值
' 5.返回值:一个整数,表示字符串中第一个字符的ASCII值.
' 6.说明:
' 6-1、如果字符串为空(""),则Asc函数返回0
' 6-2、Asc函数只能正确处理单字节字符集,如ANSI或默认的Windows代码页。对于双字节字符集(如Unicode),Asc函数可能无法正确返回预期的值,因为它只处理字符串的第一个字节
' 7.示例:
'-----------------------------------------------------------------------------------------------------------------------------------------------------------------
Rem 模拟Python中ascii函数应用1:调试和文本处理
Function CustomAscii(s As String) As StringDim ascii_repr As StringDim debug_info As StringDim i As Integer' 初始化调试信息debug_info = "String length: " & Len(s) & vbCrLf & "ASCII representation: "' 遍历字符串的每个字符For i = 1 To Len(s)' 获取字符的ASCII值,并添加到ascii_repr中ascii_repr = ascii_repr & vbCrLf & "Char: " & mid(s, i, 1) & " -> ASCII: " & Asc(mid(s, i, 1)) & vbCrLfNext i' 拼接调试信息和ASCII表示形式CustomAscii = debug_info & ascii_repr
End Function
Rem 执行程序,功能:调用自定义函数CustomAscii,实现文本信息处理
Sub TestRun_1()Dim text As StringDim ascii_debug_info As String' 输入的字符串text = "人生苦短,我用Python!"' 调用CustomAscii函数ascii_debug_info = CustomAscii(text)' 显示结果MsgBox ascii_debug_info, vbInformation, "文本处理"
End SubRem 模拟Python中ascii函数应用2:数据清洗和规范化
Function CustomAscii_1(s As String, keepAsciiOnly As Boolean) As StringDim originalString As StringDim asciiOnlyString As StringDim asciiRepr As StringDim debugInfo As StringDim i As IntegerDim c As String' 保存原始字符串originalString = s' 如果 keepAsciiOnly 为 True,则只保留 ASCII 字符If keepAsciiOnly ThenasciiOnlyString = ""For i = 1 To Len(s)c = mid(s, i, 1)If AscW(c) < 128 ThenasciiOnlyString = asciiOnlyString & cEnd IfNext iElseasciiOnlyString = originalStringEnd If' VBA 没有内置的 ascii 函数来将整个字符串转换为 ASCII 表示形式' 但我们可以手动构建一个字符串,将非 ASCII 字符替换为转义序列asciiRepr = ""For i = 1 To Len(originalString)c = mid(originalString, i, 1)If AscW(c) < 128 ThenasciiRepr = asciiRepr & cElse' 使用 VBA 的 ChrW 和 AscW 函数转换非 ASCII 字符为转义序列asciiRepr = asciiRepr & "\u" & Format(AscW(c), "X4")End IfNext i' 添加调试信息debugInfo = "Original string: " & originalString & vbCrLf & _"ASCII-only string: " & asciiOnlyString & vbCrLf & _"ASCII representation: " & asciiRepr' 返回调试信息CustomAscii_1 = debugInfo
End Function
Rem 执行程序,功能:调用自定义函数CustomAscii_1,在立即窗口中输出结果
Sub TestRun_2()Dim textWithNonAscii As StringDim asciiDebugInfoKeepAscii As String' 示例文本包含非 ASCII 字符textWithNonAscii = "人生短暂,我用Python!" ' “苦”字的编码值超出127的范围,故将原来的“苦短”调整为“短暂”' 调用 CustomAscii 函数,并保留 ASCII 字符asciiDebugInfoKeepAscii = CustomAscii_1(textWithNonAscii, True)' 输出结果Debug.Print asciiDebugInfoKeepAscii
End Sub
'Original string: 人生短暂,我用Python!
'ASCII-only string: ,Python!
'ASCII representation: \uX4\uX4\uX4\uX4,\uX4\uX4Python!Rem 模拟Python中ascii函数应用3:加密和解密
Rem 加密函数,功能:将明文按照指定的偏移量加密为密文
Function EncryptWithAscii(plaintext As String, offset As Integer) As StringDim ciphertext As String ' 初始化用于存储加密后文本的变量Dim char As String ' 用于临时存储每个字符的变量Dim asciiValue As Integer ' 用于存储字符的ASCII值的变量Dim encryptedAsciiValue As Integer ' 用于存储加密后的ASCII值的变量ciphertext = "" ' 初始化密文为空字符串' 遍历明文中的每个字符For i = 1 To Len(plaintext)' 提取明文中的第i个字符char = mid(plaintext, i, 1)' 获取字符的Unicode(ASCII)值asciiValue = AscW(char)' 将字符的ASCII值加上偏移量,并取模256以确保结果在0-255范围内encryptedAsciiValue = (asciiValue + offset) Mod 256' 将加密后的ASCII值转换回字符encryptedChar = ChrW(encryptedAsciiValue)' 将加密后的字符追加到密文字符串中ciphertext = ciphertext & encryptedCharNext i' 返回加密后的密文EncryptWithAscii = ciphertext
End Function
Rem 解密函数,功能:将密文按照相同的偏移量解密为明文
Function DecryptWithAscii(ciphertext As String, offset As Integer) As StringDim plaintext As String ' 初始化用于存储解密后文本的变量Dim char As String ' 用于临时存储每个字符的变量Dim asciiValue As Integer ' 用于存储字符的ASCII值的变量Dim decryptedAsciiValue As Integer ' 用于存储解密后的ASCII值的变量plaintext = "" ' 初始化明文为空字符串' 遍历密文中的每个字符For i = 1 To Len(ciphertext)' 提取密文中的第i个字符char = mid(ciphertext, i, 1)' 获取字符的Unicode(ASCII)值asciiValue = AscW(char)' 将字符的ASCII值减去偏移量,加上256确保结果为正数,然后取模256decryptedAsciiValue = (asciiValue - offset + 256) Mod 256' 将解密后的ASCII值转换回字符decryptedChar = ChrW(decryptedAsciiValue)' 将解密后的字符追加到明文字符串中plaintext = plaintext & decryptedCharNext i' 返回解密后的明文DecryptWithAscii = plaintext
End Function
Rem 执行过程,功能:用于展示加密和解密的流程
Sub TestRun_3()Dim plaintext As String ' 初始化明文变量Dim offset As Integer ' 初始化偏移量变量Dim encryptedText As String ' 初始化加密后的文本变量Dim decryptedText As String ' 初始化解密后的文本变量plaintext = "Hello,Python!" '设置密文内容offset = 43 ' 设置偏移量' 调用加密函数加密明文encryptedText = EncryptWithAscii(plaintext, offset)' 输出加密后的文本Debug.Print "加密后的文本: " & encryptedText' 调用解密函数解密密文decryptedText = DecryptWithAscii(encryptedText, offset)' 输出解密后的文本Debug.Print "解密后的文本: " & decryptedText
End Sub
'加密后的文本: s????W{¤????L
'解密后的文本: Hello , Python!

注意:1-2中的代码需粘贴到你的VBA编辑器中,按F5执行对应的Sub程序即可输出结果。 

2、相关文章:

2-1、Python-VBA函数之旅-abs()函数

2-2、Python-VBA函数之旅-all()函数 

2-3、Python-VBA函数之旅-any()函数 

Myelsa的Python算法之旅(高铁直达):Myelsa的Python算法之旅(高铁直达)-CSDN博客
Myelsa的Python函数之旅(高铁直达):Myelsa的Python函数之旅(高铁直达)
欢迎访问个人主页:非风V非雨-CSDN博客
欢迎志同道合者一起交流学习,我的QQ:94509325/微信:

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

景联文科技:为AI大模型提供高质海量训练数据

在全球AI浪潮的推动下&#xff0c;大量训练数据已成为AI算法模型发展和演进中的关键一环。 艾瑞咨询数据显示&#xff0c;包括数据采集、数据处理&#xff08;标注&#xff09;、数据存储、数据挖掘等模块在内的AI基础数据服务市场&#xff0c;将在未来数年内持续增长。 预计到…

算法:完全背包问题dp

文章目录 一、完全背包问题的特征二、定义状态三、状态转移四、降维优化五、参考例题5.1、Acwing&#xff1a;3.完全背包问题5.2、Acwing&#xff1a;900. 整数划分 一、完全背包问题的特征 完全背包问题是动态规划中的一种经典问题&#xff0c;它的主要特征可以总结如下&…

ES6中 Promise的详细讲解

文章目录 一、介绍状态特点流程 二、用法实例方法then()catchfinally() 构造函数方法all()race()allSettled()resolve()reject() 三、使用场景# 参考文献 一、介绍 Promise&#xff0c;译为承诺&#xff0c;是异步编程的一种解决方案&#xff0c;比传统的解决方案&#xff08;…

2024/4/5—力扣—在排序数组中查找元素的第一个和最后一个位置

代码实现&#xff1a; 思路&#xff1a;二分法 方法一&#xff1a;分别查找左右侧边界 /*** Note: The returned array must be malloced, assume caller calls free().*/ int GetTargetFirstPosition(int *nums, int numsSize, int target) {int l 0, r numsSize - 1;while …

springboot无人便利店信息管理系统ssm+tomcat+java

jdk版本&#xff1a;1.8 及以上 ide工具&#xff1a;IDEA 或者eclipse 数据库: mysql 编程语言: java 框架&#xff1a;SSM/springboot都有 maven: 3.6.1 前端&#xff1a;layuibootstrapjsp 详细技术&#xff1a;HTMLCSSJSjspspringmvcmybatisMYSQLMAVENtomcat本文以java实现…

Jenkins使用-绑定域控与用户授权

一、Jenkins安装完成后&#xff0c;企业中使用&#xff0c;首先需要绑定域控以方便管理。 操作方法&#xff1a; 1、备份配置文件&#xff0c;防止域控绑定错误或授权策略选择不对&#xff0c;造成没办法登录&#xff0c;或登录后没有权限操作。 [roottest jenkins]# mkdir ba…

iOS 开发中上传 IPA 文件的方法(无需 Mac 电脑

引言 在 iOS 开发中&#xff0c;将 IPA 文件上传到苹果开发者中心是一个重要的步骤。通常情况下&#xff0c;我们需要使用 Mac 电脑上的 Xcode 或 Application Loader 工具来完成这个任务。然而&#xff0c;如果你没有 Mac 电脑&#xff0c;也没有关系&#xff0c;本文将介绍一…

Windows编译运行yolov9-bytetrack-tensorrt (C++)

Windows编译运行yolov9-bytetrack-tensorrt&#xff08;C&#xff09; 1 基础环境2 编译yolov9-bytetrack-tensorrt&#xff08;1&#xff09;下载yolov9-bytetrack-tensorrt源码&#xff08;2&#xff09;修改CMakeLists.txt&#xff08;3&#xff09;CMake编译 3 yolov9模型转…

css实现各级标题自动编号

本文在博客同步发布&#xff0c;您也可以在这里看到最新的文章 Markdown编辑器大多不会提供分级标题的自动编号功能&#xff0c;但我们可以通过简单的css样式设置实现。 本文介绍了使用css实现各级标题自动编号的方法&#xff0c;本方法同样适用于typora编辑器和wordpress主题…

有没有适合运动佩戴的耳机?最适合运动使用的开放式耳机推荐

哪种耳机更适合运动&#xff0c;挂耳式和入耳式哪种更合适呢&#xff1f;答案是挂耳式的耳机更适合运动&#xff0c;适用的场景也更多。无论你是在家还是在外面运动&#xff0c;都很合适。挂耳式耳机也可以叫开放式耳机&#xff0c;它开放式的设计可以让我们更好的感知到周围嘈…

1132A安捷伦1132A示波器探头

181/2461/8938产品概述&#xff1a; 带宽: 输入阻抗: 差分输入R: 50千欧差分输入C: 0.27-0.34 pF单端输入电阻:25千欧单端输入C: 0.44-0.67 pF 连通性: E2669A差分/单端连接套件E2668A单端连接套件用于InfiniiMax探头的E2675A差分浏览器套件E2677A InfiniiMax 12 GHz差分焊…

APx500音频分析仪硬件简介

两通道模拟输出&#xff0c;两通道或以上的模拟输入接口 线性编码数字音频接口&#xff08;AES/EBU,TOSLINK,SPDIF&#xff09;Linear PCM 脉冲密度调制码流&#xff08;需要APx-PDM选件支持&#xff09; Bluetooth蓝牙音频码流&#xff08;需APx-BT选件支持&#xff09; 最…

DataGrip 2024 for Mac/Win—数据库管理的得力助手

在当今的数据驱动世界中&#xff0c;高效地管理数据库至关重要。无论您是数据库管理员、开发人员还是数据分析师&#xff0c;DataGrip 2024 都是您不可或缺的工具。 DataGrip 2024 适用于 Mac 和 Win 系统&#xff0c;具有以下卓越特性&#xff1a; 全面支持多种数据库&#…

uniapp请求后端接口

新建文件夹utils const request (config) > {// 拼接完整的接口路径config.url http://mm.test.cn config.url;//这里拼接的是访问后端接口的地址&#xff0c;http://mm.test.cn/prod-api/testconsole.log(config.url)//判断是都携带参数if(!config.data){config.data …

【方法】PDF密码如何取消?

对于重要的PDF文件&#xff0c;很多人会设置密码保护&#xff0c;那后续不需要保护了&#xff0c;如何取消密码呢&#xff1f; 今天我们来看看&#xff0c;PDF的两种密码&#xff0c;即“限制密码”和“打开密码”&#xff0c;是如何取消的&#xff0c;以及忘记密码的情况要怎…

Android Studio 生成 keystore 签名文件及打包验证流程

一、创建keystore签名文件 1、在菜单栏中&#xff0c;依次点击 Build - Generate Signed Bundle/Apk...(生成签名) 2、选择 APK 选项&#xff0c;点击按钮 Next 到下一步 3、新建key store秘钥文件&#xff0c;点击按钮 Next 到下一步 4、按如下提示填写信息&#xff0c;点击按…

Java的Maven下载和配置步骤

Maven的下载 https://maven.apache.org/download.cgi 以Windows10版本为列&#xff0c;下载如图所示的格式&#xff1a; Maven的环境配置 以Windows10为例&#xff0c;进行环境变量的配置 在点击环境变量按钮之后选择系统变量&#xff0c;首先点击新建,把这两个参数如下图输…

Python 绘制饼图

import matplotlib.pyplot as plt # 数据 labels [A, B, C, D] sizes [20, 30, 40, 10] # 饼图 plt.figure(figsize(5, 5)) plt.pie(sizes, labelslabels, autopct%1.1f%%, startangle90) #startangle 初始角度 plt.rcParams[font.sans-serif] [Times New Roman] plt.axis(e…

SUSE Linux Enterprise Server安装

1. SUSE镜像下载 下载地址&#xff1a;Evaluation Copy of SUSE Linux Enterprise Server | SUSE 选择自己需要的版本和对应的架构 选择下载SLE-15-SP5-Full-x86_64-GM-Media1.iso&#xff0c;下载时需要注册请按照提示进行注册。 2. 安装SUSE Linux 安装时可以通过连接服务…

三、SpringBoot3 整合 SpringMVC

本章概要 实现过程web 相关配置静态资源处理自定义拦截器(SpringMVC 配置) 3.1 实现过程 创建程序引入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www…