當前位置: 首頁>>代碼示例>>Python>>正文


Python dumbdbm.open方法代碼示例

本文整理匯總了Python中dumbdbm.open方法的典型用法代碼示例。如果您正苦於以下問題:Python dumbdbm.open方法的具體用法?Python dumbdbm.open怎麽用?Python dumbdbm.open使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在dumbdbm的用法示例。


在下文中一共展示了dumbdbm.open方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: test_dumbdbm_creation_mode

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_dumbdbm_creation_mode(self):
        try:
            old_umask = os.umask(0002)
            f = dumbdbm.open(_fname, 'c', 0637)
            f.close()
        finally:
            os.umask(old_umask)

        expected_mode = 0635
        if os.name != 'posix' or sys.platform == 'cli':
            # Windows and IronPython only support setting the read-only attribute.
            # This shouldn't fail, but doesn't work like Unix either.
            expected_mode = 0666

        import stat
        st = os.stat(_fname + '.dat')
        self.assertEqual(stat.S_IMODE(st.st_mode), expected_mode)
        st = os.stat(_fname + '.dir')
        self.assertEqual(stat.S_IMODE(st.st_mode), expected_mode) 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:21,代碼來源:test_dumbdbm.py

示例2: test_line_endings

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_line_endings(self):
        # test for bug #1172763: dumbdbm would die if the line endings
        # weren't what was expected.
        f = dumbdbm.open(_fname)
        f['1'] = 'hello'
        f['2'] = 'hello2'
        f.close()

        # Mangle the file by adding \r before each newline
        with open(_fname + '.dir') as f:
            data = f.read()
        data = data.replace('\n', '\r\n')
        with open(_fname + '.dir', 'wb') as f:
            f.write(data)

        f = dumbdbm.open(_fname)
        self.assertEqual(f['1'], 'hello')
        self.assertEqual(f['2'], 'hello2')

        f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:22,代碼來源:test_dumbdbm.py

示例3: test_random

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_random(self):
        import random
        d = {}  # mirror the database
        for dummy in range(5):
            f = dumbdbm.open(_fname)
            for dummy in range(100):
                k = random.choice('abcdefghijklm')
                if random.random() < 0.2:
                    if k in d:
                        del d[k]
                        del f[k]
                else:
                    v = random.choice('abc') * random.randrange(10000)
                    d[k] = v
                    f[k] = v
                    self.assertEqual(f[k], v)
            f.close()

            f = dumbdbm.open(_fname)
            expected = d.items()
            expected.sort()
            got = f.items()
            got.sort()
            self.assertEqual(expected, got)
            f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:27,代碼來源:test_dumbdbm.py

示例4: test_dumbdbm_creation_mode

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_dumbdbm_creation_mode(self):
        # On platforms without chmod, don't do anything.
        if not (hasattr(os, 'chmod') and hasattr(os, 'umask')):
            return

        try:
            old_umask = os.umask(0002)
            f = dumbdbm.open(_fname, 'c', 0637)
            f.close()
        finally:
            os.umask(old_umask)

        expected_mode = 0635
        if os.name != 'posix':
            # Windows only supports setting the read-only attribute.
            # This shouldn't fail, but doesn't work like Unix either.
            expected_mode = 0666

        import stat
        st = os.stat(_fname + '.dat')
        self.assertEqual(stat.S_IMODE(st.st_mode), expected_mode)
        st = os.stat(_fname + '.dir')
        self.assertEqual(stat.S_IMODE(st.st_mode), expected_mode) 
開發者ID:dxwu,項目名稱:BinderFilter,代碼行數:25,代碼來源:test_dumbdbm.py

示例5: test_line_endings

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_line_endings(self):
        # test for bug #1172763: dumbdbm would die if the line endings
        # weren't what was expected.
        f = dumbdbm.open(_fname)
        f['1'] = 'hello'
        f['2'] = 'hello2'
        f.close()

        # Mangle the file by adding \r before each newline
        data = open(_fname + '.dir').read()
        data = data.replace('\n', '\r\n')
        open(_fname + '.dir', 'wb').write(data)

        f = dumbdbm.open(_fname)
        self.assertEqual(f['1'], 'hello')
        self.assertEqual(f['2'], 'hello2') 
開發者ID:dxwu,項目名稱:BinderFilter,代碼行數:18,代碼來源:test_dumbdbm.py

示例6: test_dumbdbm_creation_mode

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_dumbdbm_creation_mode(self):
        try:
            old_umask = os.umask(0002)
            f = dumbdbm.open(_fname, 'c', 0637)
            f.close()
        finally:
            os.umask(old_umask)

        expected_mode = 0635
        if os.name != 'posix':
            # Windows only supports setting the read-only attribute.
            # This shouldn't fail, but doesn't work like Unix either.
            expected_mode = 0666

        import stat
        st = os.stat(_fname + '.dat')
        self.assertEqual(stat.S_IMODE(st.st_mode), expected_mode)
        st = os.stat(_fname + '.dir')
        self.assertEqual(stat.S_IMODE(st.st_mode), expected_mode) 
開發者ID:aliyun,項目名稱:oss-ftp,代碼行數:21,代碼來源:test_dumbdbm.py

示例7: test_line_endings

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_line_endings(self):
        # test for bug #1172763: dumbdbm would die if the line endings
        # weren't what was expected.
        f = dumbdbm.open(_fname)
        f['1'] = 'hello'
        f['2'] = 'hello2'
        f.close()

        # Mangle the file by adding \r before each newline
        fp = open(_fname + '.dir', 'r+')
        data = fp.read()
        data = data.replace('\n', '\r\n')
        fp.seek(0)
        fp.truncate()
        fp.write(data)
        fp.close()

        f = dumbdbm.open(_fname)
        self.assertEqual(f['1'], 'hello')
        self.assertEqual(f['2'], 'hello2')
        f.close() 
開發者ID:ofermend,項目名稱:medicare-demo,代碼行數:23,代碼來源:test_dumbdbm.py

示例8: upload_dists

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def upload_dists(self, distfilenames):
        to_upload = []
        for distfilename in distfilenames:
            if os.path.isfile(distfilename) and \
                    (distfilename.lower().endswith('.whl') or
                     distfilename.lower().endswith('.tar.gzXXX')):
                to_upload.append(distfilename)
            else:
                _logger.debug("skipped %s: not a python distribution",
                              distfilename)
        with contextlib.closing(dumbdbm.open(self.cache, 'c')) as dbm:
            for distfilename in sorted(to_upload, key=_split_filename):
                self.upload_dist(distfilename, dbm) 
開發者ID:OCA,項目名稱:maintainer-tools,代碼行數:15,代碼來源:pypi_upload.py

示例9: cache_print_errors

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def cache_print_errors(self):
        with contextlib.closing(dumbdbm.open(self.cache, 'r')) as dbm:
            for key, value in dbm.items():
                if not self._key_match(key):
                    continue
                if value:
                    wheel = self._key_to_wheel(key)
                    click.echo(u"{}: {}".format(wheel, value)) 
開發者ID:OCA,項目名稱:maintainer-tools,代碼行數:10,代碼來源:pypi_upload.py

示例10: cache_rm

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def cache_rm(self, distfilenames):
        with contextlib.closing(dumbdbm.open(self.cache, 'w')) as dbm:
            for distfilename in distfilenames:
                distfilename = os.path.basename(distfilename)
                key = self._make_key(distfilename)
                if key in dbm:
                    del dbm[key] 
開發者ID:OCA,項目名稱:maintainer-tools,代碼行數:9,代碼來源:pypi_upload.py

示例11: test_dumbdbm_creation

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_dumbdbm_creation(self):
        f = dumbdbm.open(_fname, 'c')
        self.assertEqual(f.keys(), [])
        for key in self._dict:
            f[key] = self._dict[key]
        self.read_helper(f)
        f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:9,代碼來源:test_dumbdbm.py

示例12: test_close_twice

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_close_twice(self):
        f = dumbdbm.open(_fname)
        f['a'] = 'b'
        self.assertEqual(f['a'], 'b')
        f.close()
        f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:8,代碼來源:test_dumbdbm.py

示例13: test_dumbdbm_modification

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_dumbdbm_modification(self):
        self.init_db()
        f = dumbdbm.open(_fname, 'w')
        self._dict['g'] = f['g'] = "indented"
        self.read_helper(f)
        f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:8,代碼來源:test_dumbdbm.py

示例14: test_dumbdbm_read

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_dumbdbm_read(self):
        self.init_db()
        f = dumbdbm.open(_fname, 'r')
        self.read_helper(f)
        f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:7,代碼來源:test_dumbdbm.py

示例15: test_write_write_read

# 需要導入模塊: import dumbdbm [as 別名]
# 或者: from dumbdbm import open [as 別名]
def test_write_write_read(self):
        # test for bug #482460
        f = dumbdbm.open(_fname)
        f['1'] = 'hello'
        f['1'] = 'hello2'
        f.close()
        f = dumbdbm.open(_fname)
        self.assertEqual(f['1'], 'hello2')
        f.close() 
開發者ID:IronLanguages,項目名稱:ironpython2,代碼行數:11,代碼來源:test_dumbdbm.py


注:本文中的dumbdbm.open方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。