Python自学 - 函数初步(内置函数、模块函数、自定义函数)

1 Python自学 - 函数初步(内置函数、模块函数、自定义函数)

1.1 内置函数

  几乎所有的编程都会提供一些内置函数,以便完成一些最基本的任务,Python提供了丰富的内置函数,熟悉内置函数可以给工作带来极大便利。
  Python官方的内置函数介绍网址:Python内置函数。

1.1.1 数学函数

  • abs():
    abs(x),返回一个数字的绝对值。 参数可以是整数、浮点数或任何实现了 abs() 的对象。 如果参数是一个复数,则返回它的模。
  • divmod():
    divmod(a, b),接受两个(非复数)数字作为参数并返回由当对其使用整数除法时的商和余数组成的数字对。
  • hash():
    hash(object),返回该对象的哈希值(如果它有的话)。
  • pow():
    pow(base, exp, mod=None), 返回 base 的 exp 次幂
  • round():
    round(number, ndigits=None),返回 number 舍入到小数点后 ndigits 位精度的值。

1.1.2 字符串函数

  • ascii():
    ascii(object),与 repr() 类似,返回一个包含对象的可打印表示形式的字符串,但是使用 \x、\u 和 \U 对 repr() 返回的字符串中非 ASCII 编码的字符进行转义。
  • chr():
    chr(i),返回 Unicode 码位为整数 i 的字符的字符串格式。
  • format():
    format(value, format_spec=''),将 value 转换为“格式化后”的形式,格式由 format_spec 进行控制。
  • ord():
    ord(c),对表示单个 Unicode 字符的字符串,返回代表它 Unicode 码点的整数。
  • repr():
    repr(object),返回包含一个对象的可打印表示形式的字符串。
  • str():
    class str(object='')
    class str(object=b'', encoding='utf-8', errors='strict'),返回一个 str 版本的 object

1.1.3 统计函数

  • len():
    len(s),返回对象的长度(元素个数)。
  • max():
    max(iterable, *, key=None)
    max(iterable, *, default, key=None)
    max(arg1, arg2, *args, key=None)
    返回可迭代对象中最大的元素,或者返回两个及以上实参中最大的。
  • min():
    min(iterable, *, key=None)
    min(iterable, *, default, key=None)
    min(arg1, arg2, *args, key=None), 返回可迭代对象中最小的元素,或者返回两个及以上实参中最小的。
  • sum():
    sum(iterable, /, start=0),从 start 开始自左向右对 iterable 的项求和并返回总计值。 iterable 的项通常为数字,而 start 值则不允许为字符串。

1.1.4 迭代函数

  • aiter():
    aiter(async_iterable),返回 asynchronous iterable 的 asynchronous iterator 。相当于调用 x.aiter()。
  • all():
    all(iterable),如果 iterable 的所有元素均为真值(或可迭代对象为空)则返回 True 。
  • anext():
    awaitable anext(async_iterator)
    awaitable anext(async_iterator, default), 当进入 await 状态时,从给定 asynchronous iterator 返回下一数据项,迭代完毕则返回 default。
  • any():
    any(iterable),如果 iterable 的任一元素为真值则返回 True。 如果可迭代对象为空,返回 False。
  • enumerate():
    enumerate(iterable, start=0),返回一个枚举对象。iterable 必须是一个序列,或 iterator,或其他支持迭代的对象。
  • filter():
    filter(function, iterable),使用 iterable 中 function 返回真值的元素构造一个迭代器。 iterable 可以是一个序列,一个支持迭代的容器或者一个迭代器。
  • iter():
    iter(object)
    iter(object, sentinel),返回一个 iterator 对象。 根据是否存在第二个参数,对第一个参数的解读会有很大的不同。 如果没有第二个参数,object 必须是一个支持 iterable 协议 (有 iter() 方法) 的多项集对象,或者必须支持序列协议 (有 getitem() 方法并使用从 0 开始的整数参数)。
  • map():
    map(function, iterable, *iterables),返回一个将 function 应用于 iterable 的每一项,并产生其结果的迭代器。 如果传入了额外的 iterables 参数,则 function 必须接受相同个数的参数并被用于到从所有可迭代对象中并行获取的项。
  • next():
    next(iterator)
    next(iterator, default),通过调用 iterator 的 next() 方法获取下一个元素。如果迭代器耗尽,则返回给定的 default,如果没有默认值则触发 StopIteration。
  • range():
    class range(stop)
    class range(start, stop, step=1),虽然被称为函数,但 range 实际上是一个不可变的序列类型

1.1.5 类型函数

  • bin():
    bin(x),将一个整数转换为带前缀 “0b” 的二进制数字符串。
  • bool():
    class bool(object=False, /),返回布尔值,即 True 或 False 中的一个。
  • bytearray():
    class bytearray(source=b'')
    class bytearray(source, encoding)
    class bytearray(source, encoding, errors),返回一个新的 bytes 数组。 bytearray 类是一个可变序列,包含范围为 0 <= x < 256 的整数。
  • bytes():
    class bytes(source=b'')
    class bytes(source, encoding)
    class bytes(source, encoding, errors),返回一个新的“bytes”对象,这是一个不可变序列,包含范围为 0 <= x < 256 的整数。
  • complex():
    class complex(number=0, /)
    class complex(string, /)
    class complex(real=0, imag=0),将特定的字符串或数字转换为一个复数,或基于特定的实部和虚部创建一个复数。
  • dict():
    class dict(**kwarg)
    class dict(mapping, **kwarg)
    class dict(iterable, **kwarg),创建一个新的字典。dict 对象是一个字典类。
  • float():
    class float(number=0.0, /)
    class float(string, /),返回基于一个数字或字符串构建的浮点数。
  • frozenset():
    class frozenset(iterable=set()),返回一个新的 frozenset 对象,它包含可选参数 iterable 中的元素。
  • hex():
    hex(x),将整数转换为带前缀 “0x” 前缀的小写十六进制数字符串。
  • int():
    class int(number=0, /)
    class int(string, /, base=10),返回从一个数字或字符串构建的整数对象,或者如果未给出参数则返回 0。
  • list():
    class list
    class list(iterable),虽然被称为函数,list 实际上是一种可变序列类型
  • oct():
    oct(x),将整数转换为带前缀 “0o” 的八进制数字符串。
  • set():
    class setclass set(iterable),返回一个新的 set 对象,可以选择带有从 iterable 获取的元素。
  • tuple():
    class tupleclass tuple(iterable),虽然被称为函数,但 tuple 实际上是一个不可变的序列类型

1.1.6 输入输出

  • input():
    input()input(prompt),如果存在 prompt 实参,则将其写入标准输出,末尾不带换行符。接下来,该函数从输入中读取一行,将其转换为字符串(除了末尾的换行符)并返回。当读取到 EOF 时,则触发 EOFError。
  • open():
    open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None),打开 file 并返回对应的 file object。 如果该文件不能被打开,则引发 OSError。
  • print():
    print(*objects, sep=' ', end='\n', file=None, flush=False),将 objects 打印输出至 file 指定的文本流,以 sep 分隔并在末尾加上 end。 sep 、 end 、 file 和 flush 必须以关键字参数的形式给出。

1.1.7 类与对象函数

  • classmethod():
    @classmethod,把一个方法封装成类方法。
  • delattr():
    delattr(object, name),这是 setattr() 的相关函数。 其参数是一个对象和一个字符串。 其中字符串必须是对象的某个属性的名称。
  • getattr():
    getattr(object, name)
    getattr(object, name, default),object 中指定名称的属性的值。 name 必须是字符串。 如果该字符串是对象的某一属性的名称,则结果将为该属性的值。
  • hasattr():
    hasattr(object, name),该实参是一个对象和一个字符串。如果字符串是对象的属性之一的名称,则返回 True,否则返回 False。
  • isinstance():
    isinstance(object, classinfo),如果 object 参数是 classinfo 参数的实例,或者是其 (直接、间接或 虚拟) 子类的实例则返回 True。 如果 object 不是给定类型的对象,则该函数总是返回 False。
  • issubclass():
    issubclass(class, classinfo),如果 class 是 classinfo 的子类(直接、间接或 虚的 ),则返回 True。类将视为自己的子类。classinfo 可为类对象的元组(或递归地,其他这样的元组)或 union 类型,这时如果 class 是 classinfo 中任何条目的子类,则返回 True 。
  • memoryview():
    class memoryview(object),返回由给定实参创建的“内存视图”对象。
  • object():
    class object,这是所有其他类的终极基类。 它提供了所有 Python 类实例均具有的方法。 当其构造器被调用时,它将返回一个新的基本对象。 该构造器不接受任何参数。
  • property():
    class property(fget=None, fset=None, fdel=None, doc=None),返回 property 属性。fget 是获取属性值的函数。 fset 是用于设置属性值的函数。 fdel 是用于删除属性值的函数。并且 doc 为属性对象创建文档字符串。
  • reversed():
    reversed(seq),返回一个反向的 iterator。
  • setattr():
    setattr(object, name, value),本函数与 getattr() 相对应。其参数为一个对象、一个字符串和一个任意值。
  • slice():
    class slice(stop)
    class slice(start, stop, step=None),返回一个表示由 range(start, stop, step) 指定的索引集的 slice 对象。 start 和 step 参数默认为 None。
  • sorted():
    sorted(iterable, /, *, key=None, reverse=False),根据 iterable 中的项返回一个新的已排序列表。
  • staticmethod():
    @staticmethod,将方法转换为静态方法。
  • super():
    class super
    class super(type, object_or_type=None),返回一个代理对象,它会将方法调用委托给 type 的父类或兄弟类。 这对于访问已在类中被重写的继承方法很有用。
  • type():
    class type(object)
    class type(name, bases, dict, **kwds),传入一个参数时,返回 object 的类型。 返回值是一个 type 对象并且通常与 object.class 所返回的对象相同。推荐使用 isinstance() 内置函数来检测对象的类型,因为它会考虑子类的情况。
  • zip():
    zip(*iterables, strict=False),在多个迭代器上并行迭代,从每个迭代器返回一个数据项组成元组。

1.1.8 其他函数

  • breakpoint():
    breakpoint(*args, **kws),此函数会在调用位置进入调试器。
  • callable():
    callable(object),如果 object 参数是可调用的则返回 True,否则返回 False。 如果返回 True,调用仍可能失败,但如果返回 False,则调用 object 肯定不会成功。
  • compile():
    compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1),将 source 编译成代码或 AST 对象。代码对象可以被 exec() 或 eval() 执行。source 可以是常规的字符串、字节字符串,或者 AST 对象。参见 ast 模块的文档了解如何使用 AST 对象。
  • dir():
    dir()
    dir(object),如果没有实参,则返回当前本地作用域中的名称列表。如果有实参,它会尝试返回该对象的有效属性列表。
  • eval():
    eval(source, /, globals=None, locals=None),expression 参数将作为一个 Python 表达式 (从技术上说,是一个条件列表) 使用 globals 和 locals 映射作为全局和局部命名空间被解析并求值。
  • exec():
    exec(source, /, globals=None, locals=None, *, closure=None),这个函数支持动态执行 Python 代码。 source 必须是字符串或代码对象。 如果是字符串,那么该字符串将被解析为一组 Python 语句并随即被执行(除非发生语法错误)。
  • globals():
    globals(),返回实现当前模块命名空间的字典。对于函数内的代码,这是在定义函数时设置的,无论函数在哪里被调用都保持不变。
  • help():
    help()
    help(request),启动内置的帮助系统(此函数主要在交互式中使用)。如果没有实参,解释器控制台里会启动交互式帮助系统。如果实参是一个字符串,则在模块、函数、类、方法、关键字或文档主题中搜索该字符串,并在控制台上打印帮助信息。如果实参是其他任意对象,则会生成该对象的帮助页。
  • id():
    id(object),返回对象的“标识值”。该值是一个整数,在此对象的生命周期中保证是唯一且恒定的。两个生命期不重叠的对象可能具有相同的 id() 值。
  • locals():
    locals(),返回一个代表当前局部符号表的映射对象,以变量名称作为键,而以其当前绑定的引用作为值。
  • vars():
    vars()
    vars(object)返回模块、类、实例或任何其他具有 dict 属性的对象的 dict 属性。
  • __import__():
    __import__(name, globals=None, locals=None, fromlist=(), level=0),与 importlib.import_module() 不同,这是一个日常 Python 编程中不需要用到的高级函数。
🕮说明
  以上函数基于Python 3.13,后续版本更新可能会有内置函数的更新,请随时参数官方文档。

1.2 库函数(模块)

  内置函数能解决的工作场景非常有限,那么怎么办呢, 类似于其他语言,比如:C/C++,会有include xxx语句引入其他库,库可以是官方也可以是第3方提供,通过库函数解决的任务场景将大大提高,不需要工程师从头开始写代码,极大的提高了工作效率。
  如果要查看当前支持哪些库,可以执行如下的代码:

print(help("modules"))

笔者本地的输出:

Please wait a moment while I gather a list of all available modules...test_sqlite3: testing with SQLite version 3.45.3
__future__          _strptime           filecmp             rlcompleter
__hello__           _struct             fileinput           runpy
__phello__          _symtable           fnmatch             sched
_abc                _sysconfig          fractions           secrets
_aix_support        _testbuffer         ftplib              select
_android_support    _testcapi           functools           selectors
_ast                _testclinic         gc                  shelve
_asyncio            _testclinic_limited genericpath         shlex
_bisect             _testconsole        getopt              shutil
_blake2             _testimportmultiple getpass             signal
_bz2                _testinternalcapi   gettext             site
_codecs             _testlimitedcapi    glob                smtplib
_codecs_cn          _testmultiphase     graphlib            socket
_codecs_hk          _testsinglephase    gzip                socketserver
_codecs_iso2022     _thread             hashlib             sqlite3
_codecs_jp          _threading_local    heapq               sre_compile
_codecs_kr          _tkinter            hmac                sre_constants
_codecs_tw          _tokenize           html                sre_parse
_collections        _tracemalloc        http                ssl
_collections_abc    _typing             idlelib             stat
_colorize           _uuid               imaplib             statistics
_compat_pickle      _warnings           importlib           string
_compression        _weakref            inspect             stringprep
_contextvars        _weakrefset         io                  struct
_csv                _winapi             ipaddress           subprocess
_ctypes             _wmi                itertools           symtable
_ctypes_test        _zoneinfo           json                sys
_datetime           abc                 keyword             sysconfig
_decimal            antigravity         linecache           tabnanny
_elementtree        argparse            locale              tarfile
_functools          array               logging             tempfile
_hashlib            ast                 lzma                test
_heapq              asyncio             mailbox             textwrap
_imp                atexit              marshal             this
_interpchannels     base64              math                threading
_interpqueues       bdb                 mimetypes           time
_interpreters       binascii            mmap                timeit
_io                 bisect              modulefinder        tkinter
_ios_support        builtins            msvcrt              token
_json               bz2                 multiprocessing     tokenize
_locale             cProfile            netrc               tomllib
_lsprof             calendar            nt                  trace
_lzma               cmath               ntpath              traceback
_markupbase         cmd                 nturl2path          tracemalloc
_md5                code                numbers             tty
_multibytecodec     codecs              opcode              turtle
_multiprocessing    codeop              operator            turtledemo
_opcode             collections         optparse            types
_opcode_metadata    colorsys            os                  typing
_operator           compileall          pathlib             unicodedata
_osx_support        concurrent          pdb                 unittest
_overlapped         configparser        pickle              urllib
_pickle             contextlib          pickletools         uuid
_py_abc             contextvars         pip                 venv
_pydatetime         copy                pkgutil             warnings
_pydecimal          copyreg             platform            wave
_pyio               csv                 plistlib            weakref
_pylong             ctypes              poplib              webbrowser
_pyrepl             curses              posixpath           winreg
_queue              dataclasses         pprint              winsound
_random             datetime            profile             wsgiref
_sha1               dbm                 pstats              xml
_sha2               decimal             pty                 xmlrpc
_sha3               difflib             py_compile          xxsubtype
_signal             dis                 pyclbr              zipapp
_sitebuiltins       doctest             pydoc               zipfile
_socket             easygui             pydoc_data          zipimport
_sqlite3            email               pyexpat             zlib
_sre                encodings           queue               zoneinfo
_ssl                ensurepip           quopri              无标题2
_stat               enum                random              
_statistics         errno               re                  
_string             faulthandler        reprlib             Enter any module name to get more help.  Or, type "modules spam" to search
for modules whose name or summary contain the string "spam".None
🕮说明
  每个模块的具体用法,请参考Python官网或模块的官网,如果查看简短的帮助,可以在Python中执行:print(help("easygui"))语句。

1.3 自定义函数

  自定义函数的语法格式如下:

def func_name([params]): #可以没有参数干活语句return 返回值  #可以没有返回
  • 示例1:返回两数中的较大者
    import easygui as eg
    flds = ['参数1', '参数2'] #配置界面上显示两个参数
    defs = ['11', '101'] #两个参数设置默认参数
    ipt1, ipt2 = [int(x) for x in eg.multenterbox("请输入两数字:", "输入", flds, defs)]# ---------------------------------------------------------------------------
    # @fn         返回两者中的大值
    # @param[in]  para1: 参数1,数字
    # @param[in]  para2: 参数2,数字
    # @return     返回较大者,数字
    # @author     tyysoft
    # @date       2025-00-04 13:37:40
    # @code       py
    # my_max(1,2)
    # @encode     
    # ---------------------------------------------------------------------------
    def my_max(para1, para2):if para1 >= para2:return para1else:return para2print(f'数字:{ipt1}, {ipt2}中较大的是:{my_max(ipt1, ipt2)}')
    #输出:数字:11, 101中较大的是:101
    

1.3.1 默认参数

  许多内置函数或库函数都带有默认参数,使用默认参数可以让函数的调用更简单,用户不需要每个参数都赋值,减轻工作量,提高效率,那么在自定义函数中,如何给参数设置默认值呢?

def print_list(length = 10):l = [x for x in range(length)]print(l)print_list()
#输出:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

示例2:两个参数,其中一个参数带默认值

def print_list(step, length = 10):l = [x for x in range(0, length, step)]print(l)print_list(2)
#输出:[0, 2, 4, 6, 8]
🕮说明
  一般要求带默认值的参数在参数列表的右侧!

1.3.2 参数收集器

  函数定义时,如果参数名前带*号,表示该参数是收集器,即,函数在调用时,如果输入多个参数,将由这个收集器接收到一个元组中。

1.3.2.1 普通参数收集器
  • 示例1:只有一个接收器参数
def func_1(*args):print(f'接收到的参数:{args}')func_1(1, 2, 'string')
#输出:接收到的参数:(1, 2, 'string')
  • 示例2:1个普通参数加1个接收器参数
def func_1(arg1, *others):print(f'参数1:{arg1}, 其他参数: {others}')func_1(1, 2, 'string')
#输出:参数1:1, 其他参数: (2, 'string')
1.3.2.2 关键词参数收集器

  如果用户稍加留意,部分函数在调用时,会输入参数名和参数值,比如:

#方法1:直接按顺序填写参数
c1 = complex(3.3, 6)
print(f'c1: {c1}')
#方法2:使用参数名输入参数
c2 = complex(imag =6, real = 3.3) #打乱了参数顺序
print(f'c2: {c2}')

在函数定义时使用关键词收集器:

def func_1(**args):print(f'输出参数:{args}')func_1(name='小西瓜', sex='男', age=22)
#输出:输出参数:{'name': '小西瓜', 'sex': '男', 'age': 22}

注:如果函数调用时不指定参数名,则抛出异常:TypeError

1.3.3 传值还是传引用

  在C/C++语言中,存在传递参数副本(传值)和传递参数地址(传引用),传值的方式可以保护参数,即在函数体内对参数修改,函数外部也不会改变,而传引用,在函数体内修改后,函数外部也会改变。

  • 示例1:传值,参数不会被函数修改

    int_var = 10
    float_var = 3.14
    str_var = 'python'
    tup_var = (12, 13)
    def change_var(int_var, float_var, str_var, tup_var):int_var += 1float_var += 1str_var += ' tutorial'tup_var = (1,2,3,4)print(f'in function: int: {int_var}, float:{float_var}, str:{str_var}, tuple: {tup_var}')#输出:in function: int: 11, float:4.140000000000001, str:python tutorial, tuple: (1, 2, 3, 4)
    change_var(int_var, float_var, str_var, tup_var)
    print(f'out of function: int: {int_var}, float:{float_var}, str:{str_var}, tuple: {tup_var}')
    #输出:out of function: int: 10, float:3.14, str:python, tuple: (12, 13)  参数没有被函数修改!
    
  • 示例2:传引用,参数被函数修改

    list_var = [1,2,3]
    dict_var = {"x":1, "y":2}
    set_var = {1,2,3}
    def change_var(list_var, dict_var, set_var):list_var.append(4)dict_var.update(z=3)set_var.add(4)print(f'in function: list: {list_var}, dict: {dict_var}, set: {set_var}')#输出:in function: list: [1, 2, 3, 4], dict: {'x': 1, 'y': 2, 'z': 3}, set: {1, 2, 3, 4}
    change_var(list_var, dict_var, set_var)
    print(f'out of function: list: {list_var}, dict: {dict_var}, set: {set_var}')
    #输出:out of function: list: [1, 2, 3, 4], dict: {'x': 1, 'y': 2, 'z': 3}, set: {1, 2, 3, 4}
    
1.3.3.1 总结
  • 普通数据类型(整型、浮点型、字符串、元组),做函数参数时,使用传值方式(函数体内不被修改)。
  • 复杂数据类型(列表、字典、集合),做函数参数时,使用传引用方式(在函数体内会被修改)。

作者声明:本文用于记录和分享作者的学习心得,水平有限,难免存在表达错误,欢迎交流和指教!
Copyright © 2022~2024 All rights reserved.

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

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

相关文章

Android 性能优化:内存优化(实践篇)

1. 前言 前一篇文章Android性能优化&#xff1a;内存优化 &#xff08;思路篇&#xff09; 大概梳理了Android 内存原理和优化的必要性及应该如何优化&#xff0c;输出了一套短期和长期内存优化治理的SOP方案。 那么这一篇文章就总结下我最近在做内存优化如何实践的&#xff0…

stm32第一次烧录或者上电运行卡死问题分析

问题描述 单片机烧录代码&#xff08;刚上电&#xff09;无法立即运行&#xff0c;必须要复位一次或多次才能运行&#xff1b;跟踪调试会进入HardFault_Handler中断。 问题分析 烧录配置如下图&#xff0c;首先排除配置问题那么该问题就比较让人头大了&#xff0c;理论上&am…

Unity中 Xlua使用整理(一)

1.安装: 从GitHub上下载Xlua源码 Tencent/xLua: xLua is a lua programming solution for C# ( Unity, .Net, Mono) , it supports android, ios, windows, linux, osx, etc. (github.com) 下载Xlua压缩包&#xff0c;并解压将Aseet文件夹中的Xlua和Plugins文件夹复制到Unit…

git理解记录

文章目录 1. 背景2. 基本概念3. 日常工作流程4. 其他常见操作4.1 merge合并操作4.2 tag打标签操作4.3 remoute远程操作4.4 撤销修改 git理解记录 1. 背景 git作为分布式版本控制系统&#xff0c;开源且免费&#xff0c;相比svn集中式版本控制系统存在速度快(HEAD指针指向某次co…

js复制数据到剪切板

方法一&#xff1a; 在下面方法传入你想要复制的字符 &#xff0c;直接调用该方法就好 export function copyText(text: string) {if (navigator.clipboard) {// clipboard api 复制navigator.clipboard.writeText(text)} else {const textarea document.createElement(text…

服务器Ubuntu22.04系统下 ollama的详细部署安装和搭配open_webui使用

服务器Ubuntu22.04系统下 ollama的详细部署安装和搭配open_webui使用 一、ubuntu和docker基本环境配置1.更新包列表&#xff1a;2. 安装docker依赖3. 添加docker密钥4.添加阿里云docker软件源5.安装docker6.安装完成docker测试7. docker配置国内镜像源 二、安装英伟达显卡驱动1…

LInux单机安装Redis

1. 安装gee工具包 由于Redis是基于c语言编写的所以安装的时候需要先安装gee以及gcc的依赖,yum云用不了可以看一下这个 linux 替换yum源镜像_更换yum镜像源-CSDN博客 yum install -y gcc tcl 2. 添加redis的压缩包 3. 上传到Linux 上传到 /usr/local/src 目录、这个目录一般用于…

西门子200smart存储卡作用

最近维修设备时&#xff0c;遇到一个问题&#xff0c;设备PLC是200smart SR20,PLC程序需要修改某个程序段&#xff0c;由于手里没有源程序&#xff0c;联系厂家后&#xff0c;厂家发了一段程序&#xff0c;后缀是.s7s。通过查询官网资料&#xff0c;其中S7_JOB.S7S为脚本任务&a…

QT上实现SVM进行数据分类

针对不了解SVM的原理的同学强推下面这个课程&#xff1a; 6.机器学习课程&#xff08;六&#xff09;支持向量机&#xff08;线性模型&#xff09;问题_哔哩哔哩_bilibili 一、QT实现SVM的方法 1.调用SVM的C语言库&#xff1a;麻烦&#xff0c;要专门去找库&#xff0c;cmak…

【C++】字符串与字符数|组操作详解:strcpy 和 strcat 的使用与解析

博客主页&#xff1a; [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 &#x1f4af;前言&#x1f4af;一、字符串数组的基本操作&#x1f4af;二、strcpy 的用法详解1. strcpy 的功能与原型2. 使用示例与代码演示3. 注意事项4. 扩展&#xff1a;为什么不能直接用 &#xff1f…

GWAS数据和软件下载

这部分主要是数据获取,以及软件配置方法。 一、配套数据和代码 数据和代码目前在不断的更新,最新的教程可以私信,我通过后手动发送最新版的pdf和数据代码。发送的压缩包,有电子版的pdf和数据下载链接,里面是最新的百度网盘的地址,下载到本地即可。然后根据pdf教程,结合配套的…

Vue笔记-001-声明式渲染

https://cn.vuejs.org/tutorial/#step-2https://cn.vuejs.org/tutorial/#step-2 Vue 单文件组件 (Single-File Component&#xff0c;缩写为 SFC) 单文件组件是一种可复用的代码组织形式&#xff0c;它将从属于同一个组件的 HTML、CSS 和 JavaScript 封装在使用 .vue 后缀的文件…

Scala_【5】函数式编程

第五章 函数式编程函数和方法的区别函数声明函数参数可变参数参数默认值 函数至简原则匿名函数高阶函数函数作为值传递函数作为参数传递函数作为返回值 函数闭包&柯里化函数递归控制抽象惰性函数友情链接 函数式编程 面向对象编程 解决问题时&#xff0c;分解对象&#xff…

(六)优化 ChatGPT 交互:任务式 Prompt 的力量

&#x1f4e2;&#x1f4e2;&#x1f4e2; 大家好&#xff0c;我是云楼Yunlord&#xff0c;CSDN博客之星人工智能领域前三名&#xff0c;多年人工智能学习工作经验&#xff0c;一位兴趣稀奇古怪的【人工智能领域博主】&#xff01;&#xff01;&#xff01;&#x1f61c;&#…

HarmonyOS-面试资料

1. HarmonyOS-面试资料 1.1. HarmonyOS 优点、特点 1.1.1. 优点 &#xff08;1&#xff09;在国家方面&#xff0c;是国产的系统&#xff0c;受国家支持不会有限制的情况。   &#xff08;2&#xff09;设备互连18N(1:手机 8&#xff1a;平板、PC、vr设备、可穿戴设备、智慧…

R语言基础| 中级绘图

写在前面 前面第六章的图形主要是展示单分类变量或连续型变量的分布情况。本章主要研究二元变量或多元变量关系的可视化。更多教程可参考&#xff1a; R语言基础学习手册 图片集锦&#xff1a; 11.1 散点图 1&#xff09;添加最佳拟合曲线的散点图&#xff1a; 绘制汽车重…

神经网络第一课

目录 背景知识生物神经元人工神经元模型神经网络训练神经网络结论背景知识 神经网络是一种人工智能模型,其主要受生物神经系统启发,重现了大脑中神经元之间相互连接的方式。 神经网络已在很多领域中取得显著成就,如图像识别、自然语言处理和语音识别等。 生物神经元 神经…

Docker:安装 XXL-JOB 分布式调度任务的技术指南

1、简述 XXL-JOB 是一个分布式任务调度平台&#xff0c;提供简单易用的任务调度功能。它支持分布式调度、失败重试、任务监控和报警等功能。XXL-JOB 采用了服务端与执行器的架构&#xff0c;任务调度在服务端进行&#xff0c;而任务的实际执行则由各个执行器完成。 XXL-JOB 的…

Git revert回滚

回退中间的某次提交&#xff08;此操作在预生产分支上比较常见&#xff09;&#xff0c;建议此方式使用命令进行操作&#xff08;做好注释&#xff0c;方便后续上线可以找到这个操作&#xff09; Git操作&#xff1a; 命令&#xff1a;revert -n 版本号 1&#xff1a;git re…

新年到了!使用Python创建一个简易的接金元宝游戏

引言 在本教程中&#xff0c;我们将一起学习如何使用Python编程语言和Pygame库来创建一个简单的休闲游戏——“接金元宝”。 准备工作 首先&#xff0c;确保你的计算机上已经安装了Python&#xff08;推荐3.6以上版本&#xff09;和Pygame库。如果还没有安装Pygame&#xff0…