当前位置: 首页>>代码示例>>Python>>正文


Python pathlib.PosixPath方法代码示例

本文整理汇总了Python中pathlib.PosixPath方法的典型用法代码示例。如果您正苦于以下问题:Python pathlib.PosixPath方法的具体用法?Python pathlib.PosixPath怎么用?Python pathlib.PosixPath使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pathlib的用法示例。


在下文中一共展示了pathlib.PosixPath方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: infer_settings

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def infer_settings(opt_root, opt_pattern="**/optimizer.py"):
    opt_root = PosixPath(opt_root)
    assert opt_root.is_dir(), "Opt root directory doesn't exist: %s" % opt_root
    assert opt_root.is_absolute(), "Only absolute path should have even gotten this far."

    # Always sort for reproducibility
    source_files = sorted(opt_root.glob(opt_pattern))
    source_files = [ss.relative_to(opt_root) for ss in source_files]

    settings = {_cleanup(str(ss.parent)): [str(ss), {}] for ss in source_files}

    assert all(joinable(kk) for kk in settings), "Something went wrong in name sanitization."
    assert len(settings) == len(source_files), "Name collision after sanitization of %s" % repr(source_files)
    assert len(set(CONFIG.keys()) & set(settings.keys())) == 0, "Name collision with builtin optimizers."

    return settings 
开发者ID:uber,项目名称:bayesmark,代码行数:18,代码来源:cmd_parse.py

示例2: is_7zfile

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def is_7zfile(file: Union[BinaryIO, str, pathlib.Path]) -> bool:
    """Quickly see if a file is a 7Z file by checking the magic number.
    The file argument may be a filename or file-like object too.
    """
    result = False
    try:
        if isinstance(file, io.IOBase) and hasattr(file, "read"):
            result = SevenZipFile._check_7zfile(file)  # type: ignore  # noqa
        elif isinstance(file, str):
            with open(file, 'rb') as fp:
                result = SevenZipFile._check_7zfile(fp)
        elif isinstance(file, pathlib.Path) or isinstance(file, pathlib.PosixPath) or \
                isinstance(file, pathlib.WindowsPath):
            with file.open(mode='rb') as fp:  # type: ignore  # noqa
                result = SevenZipFile._check_7zfile(fp)
        else:
            raise TypeError('invalid type: file should be str, pathlib.Path or BinaryIO, but {}'.format(type(file)))
    except OSError:
        pass
    return result 
开发者ID:miurahr,项目名称:py7zr,代码行数:22,代码来源:py7zr.py

示例3: _inject_api_endpoint_to_app

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def _inject_api_endpoint_to_app():
    '''
    Allows for changing API URL that web app is sending requests to.
    Web app expects API URL to be specified in `config.json`.
    The file must not exist, it will be created automatically if needed.
    '''
    try:
        web_app_json_config_path = PosixPath(__file__).parent / 'dist/static/config.json'
        data = {
            'apiPath': 'http://{}:{}/{}'.format(
                API.URL_HOSTNAME,
                API_SERVER.PORT,
                API.URL_PREFIX),
            'version': tensorhive.__version__,
            'apiVersion': API.VERSION
        }
        # Overwrite current file content/create file if it does not exist
        with open(str(web_app_json_config_path), 'w') as json_file:
            json.dump(data, json_file)
    except IOError as e:
        log.error('Could inject API endpoint URL, reason: ' + str(e))
    except Exception as e:
        log.critical('Unknown error: ' + str(e))
    else:
        log.debug('API URL injected successfully: {}'.format(data)) 
开发者ID:roscisz,项目名称:TensorHive,代码行数:27,代码来源:AppServer.py

示例4: __init__

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def __init__(self):
        super().__init__()
        self.infrastructure_manager = InfrastructureManager(SSH.AVAILABLE_NODES)

        self.dedicated_ssh_key = ssh.init_ssh_key(PosixPath(SSH.KEY_FILE).expanduser())

        if not SSH.AVAILABLE_NODES:
            log.error('[!] Empty ssh configuration. Please check {}'.format(SSH.HOSTS_CONFIG_FILE))
            raise ConfigurationException

        manager_ssh_key_path = SSH.KEY_FILE
        if SSH.TEST_ON_STARTUP:
            manager_ssh_key_path = self.test_ssh()

        self.connection_manager = SSHConnectionManager(config=SSH.AVAILABLE_NODES, ssh_key_path=manager_ssh_key_path)
        self.service_manager = None 
开发者ID:roscisz,项目名称:TensorHive,代码行数:18,代码来源:TensorHiveManager.py

示例5: lock

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def lock(path: pathlib.PosixPath):
    """Creates a lock file,
    a file protected from beeing used by other processes.
    (The lock file isn't the same as the file of the passed path.)

    Args:
        path (pathlib.PosixPath): path to the file
    """
    path = path.with_suffix('.lock')

    if not path.exists():
        path.touch()

    with path.open("r+") as lock_file:
        try:
            fcntl.lockf(lock_file.fileno(), fcntl.LOCK_EX)
            yield lock_file
        finally:
            fcntl.lockf(lock_file.fileno(), fcntl.LOCK_UN) 
开发者ID:seebye,项目名称:ueberzug,代码行数:21,代码来源:files.py

示例6: test_prepare_api_response

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def test_prepare_api_response(new_cluster):
    integration = cinder_integration.CinderIntegration.find_one(
        new_cluster.model_id
    )
    integration.config = "config"
    integration.keyrings["images.keyring"] = "[client.images]\n\tkey = 111"
    integration.keyrings["vols.keyring"] = "[client.vols]\n\tkey = 22"

    root_path = pathlib.PosixPath(pytest.faux.gen_alphanumeric())
    response = integration.prepare_api_response(str(root_path))

    assert str(root_path.joinpath("ceph.conf")) in response
    assert str(root_path.joinpath("images.keyring")) in response
    assert str(root_path.joinpath("vols.keyring")) in response
    assert len(response) == 3

    assert response[str(root_path.joinpath("images.keyring"))] == \
        integration.keyrings["images.keyring"]
    assert response[str(root_path.joinpath("vols.keyring"))] == \
        integration.keyrings["vols.keyring"]

    assert "[client.images]" in response[str(root_path.joinpath("ceph.conf"))]
    assert "[client.vols]" in response[str(root_path.joinpath("ceph.conf"))] 
开发者ID:Mirantis,项目名称:ceph-lcm,代码行数:25,代码来源:test_cinder_integration.py

示例7: _parse_s3url

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def _parse_s3url(cls, s3url: Optional[str] = None):
        if s3url is None:
            return "", ()

        if not s3url.startswith("s3://"):
            raise ValueError(
                "s3url must be formated as 's3://<bucket_name>/path/to/object'"
            )

        r = urlparse(s3url)
        assert r.scheme == "s3"

        key = r.path.lstrip("/")  # remove the leading /

        parts = PosixPath(key).parts
        return r.netloc, parts 
开发者ID:poodarchu,项目名称:Det3D,代码行数:18,代码来源:oss.py

示例8: _make_child

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def _make_child(self, args: Iterable[str]):

        if not self.bucket:
            bucket, *rest_args = args
            bucket = bucket.lstrip("/")
            bucket, *rest_parts = PosixPath(bucket).parts
            return self.with_bucket(bucket)._make_child(rest_parts + rest_args)

        parts = [p for p in self._key_parts]
        for item in args:
            if not isinstance(item, str):
                raise ValueError("child must be string")
            item = item.lstrip("/")  # remove leading '/'
            if not item:
                raise ValueError("child must not be empty")
            for p in PosixPath(item).parts:
                parts.append(p)

        return self._create(self._client, self.bucket, tuple(parts)) 
开发者ID:poodarchu,项目名称:Det3D,代码行数:21,代码来源:oss.py

示例9: test_pathlib

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def test_pathlib(app):
    assert isinstance(app.config["STORE_PATH"], PosixPath)
    assert isinstance(app.config["JSON_PATH"], PosixPath)
    assert isinstance(app.config["CACHE_PATH"], PosixPath)
    assert app.config["STORE_PATH"].is_dir()
    assert app.config["JSON_PATH"].is_dir()
    assert app.config["CACHE_PATH"].is_dir() 
开发者ID:aparcar,项目名称:asu,代码行数:9,代码来源:test_factory.py

示例10: converted_path

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def converted_path(self, path):
        if self.props.is_windows():
            return str(PureWindowsPath(path))
        else:
            return str(PosixPath(path)) 
开发者ID:mlsmithjr,项目名称:transcoder,代码行数:7,代码来源:cluster.py

示例11: test_concrete_class

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def test_concrete_class(self):
        p = self.cls('a')
        self.assertIs(type(p),
            pathlib.WindowsPath if os.name == 'nt' else pathlib.PosixPath) 
开发者ID:Microvellum,项目名称:Fluid-Designer,代码行数:6,代码来源:test_pathlib.py

示例12: test_unsupported_flavour

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def test_unsupported_flavour(self):
        if os.name == 'nt':
            self.assertRaises(NotImplementedError, pathlib.PosixPath)
        else:
            self.assertRaises(NotImplementedError, pathlib.WindowsPath) 
开发者ID:Microvellum,项目名称:Fluid-Designer,代码行数:7,代码来源:test_pathlib.py

示例13: getFullPath

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def getFullPath(self, name: str = "") -> str:
        path = PosixPath(self.name)

        if name != "":
            path /= name

        path = str(path)

        if self.parent is None:
            return path
        else:
            return self.parent.getFullPath(path) 
开发者ID:GoSecure,项目名称:pyrdp,代码行数:14,代码来源:filesystem.py

示例14: py_secure_filename

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def py_secure_filename(filename: str) -> str:
        """Method to clean up provided filenames to be safe, relative paths

        This function removes leading slashes, control characters, '..' and '.' in directories, and replaces \\/:*"<>|?
        with underscores.


        Args:
            filename: Filename to sanitize

        Returns:
            str
        """
        # Completely remove control characters
        safe_filename = "".join(c for c in filename if unicodedata.category(c)[0] != "C")

        # Remove leading slash if attempting an absolute path
        if safe_filename[0] == "/":
            safe_filename = safe_filename[1:]

        # Remove ../ or ./ paths (should only be relative names from the repo root)
        filename_parts = PosixPath(safe_filename).parts
        relative_filename_parts = [p for p in filename_parts if p not in ['..', '.']]

        # Replace invalid characters with underscores
        invalid_char_map = {ord(ch): '_' for ch in '\\/:*"<>|?'}
        safe_parts = [part.translate(invalid_char_map).strip() for part in relative_filename_parts]

        safe_filename = "/".join(safe_parts)
        if safe_filename != filename:
            logger.info(f"Renaming unsafe filename `{filename}` to `{safe_filename}`")

        return safe_filename 
开发者ID:gigantum,项目名称:gigantum-client,代码行数:35,代码来源:chunkupload.py

示例15: logfile

# 需要导入模块: import pathlib [as 别名]
# 或者: from pathlib import PosixPath [as 别名]
def logfile():
    path = pathlib.PosixPath('.rfm_unittest.log')
    yield path
    with suppress(FileNotFoundError):
        path.unlink() 
开发者ID:eth-cscs,项目名称:reframe,代码行数:7,代码来源:test_cli.py


注:本文中的pathlib.PosixPath方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。