‘壹’ python3 有多少内置函数
我刚刚数了下Python3.x一共有153个内置函数
具体如下:
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'MoleNotFoundError', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'WindowsError', 'ZeroDivisionError', '_', '__build_class__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'right', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']
‘贰’ 如何在python中使用protocol buffer
先安装protobuf的编译器软件
然后编写自己的描述文件(.proto)
然后运行
protoc -I=$SRC_DIR --python_out=$DST_DIR $SRC_DIR/YOUR.proto
会得到python的YOUR_pb2.py库文件
丢到项目里面导入然后使用即可
‘叁’ python出错:expected a character buffer object
TypeError: expected a character buffer object
应该是参数类型错误,具体的你要看一下报错的具体位置:会在报错信息里面
你以后提问题,一定要把错误信息完整的截图出来;或者你把源代码贴出来,而不是放几张截图。
‘肆’ python中的 open函数参数 buffer是什么意思
:有目录就有签到,你可以到后台提交贴吧目录,每周提交2次,至于速度这个不保证,你也可以后台提交目录后,再到贴吧分类吧申请目录。等你的贴吧有目录后,第二天就会有签到了注意:申请目录必须是那吧的吧主才行。
‘伍’ python sys.stdout.buffer.write什么意思
sys是系统 stdout是标准输出 buffer是缓冲区 write是写 往标准输出的缓冲区中写东西
‘陆’ 如何使用Python中的buffer
1.需要安装Protocol Buffer
直接:apt-get install protobuf-compiler
安装完毕后,进入解压目录的Python目录,执行python setup.py install;安装python的protobuf库即可。
2.可以查询到它的大致用法
pijing@ubuntu:~/protobuffer$ protoc -h
Usage: protoc [OPTION] PROTO_FILES
Parse PROTO_FILES and generate output based on the options given:
-IPATH, --proto_path=PATH Specify the directory in which to search for
imports. May be specified multiple times;
directories will be searched in order. If not
given, the current working directory is used.
--version Show version info and exit.
-h, --help Show this text and exit.
--encode=MESSAGE_TYPE Read a text-format message of the given type
from standard input and write it in binary
to standard output. The message type must
be defined in PROTO_FILES or their imports.
--decode=MESSAGE_TYPE Read a binary message of the given type from
standard input and write it in text format
to standard output. The message type must
be defined in PROTO_FILES or their imports.
--decode_raw Read an arbitrary protocol message from
standard input and write the raw tag/value
pairs in text format to standard output. No
PROTO_FILES should be given when using this
flag.
-oFILE, Writes a FileDescriptorSet (a protocol buffer,
--descriptor_set_out=FILE defined in descriptor.proto) containing all of
the input files to FILE.
--include_imports When using --descriptor_set_out, also include
all dependencies of the input files in the
set, so that the set is self-contained.
--include_source_info When using --descriptor_set_out, do not strip
SourceCodeInfo from the FileDescriptorProto.
This results in vastly larger descriptors that
include information about the original
location of each decl in the source file as
well as surrounding comments.
--error_format=FORMAT Set the format in which to print errors.
FORMAT may be 'gcc' (the default) or 'msvs'
(Microsoft Visual Studio format).
--plugin=EXECUTABLE Specifies a plugin executable to use.
Normally, protoc searches the PATH for
plugins, but you may specify additional
executables not in the path using this flag.
Additionally, EXECUTABLE may be of the form
NAME=PATH, in which case the given plugin name
is mapped to the given executable even if
the executable's own name differs.
--cpp_out=OUT_DIR Generate C++ header and source.
--java_out=OUT_DIR Generate Java source file.
--python_out=OUT_DIR Generate Python source file.
3.简单使用一下
首先定义proto文件,my.proto
{
optional int32 id=1;
optional string testname=2;
}
然后,执行命令:
protoc --python_out=./ ./my.proto
得到my_pb2.py文件
最后,在当前目录下新建一个test.py文件夹,写入测试的脚本,包括序列化和反序列化代码:
‘柒’ 如何为python中的套接字设置发送缓冲区大小
使用socket.setsockopt()和SO_SNDBUF:
socket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, <value>)
<value>是要设置为Python的缓冲区大小。int。
socket.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, 8192) # Buffer size 8192