我们从Python开源项目中,提取了以下24个代码示例,用于说明如何使用locale.LC_ALL。
def test_localeIndependent(self): """ The month name in the date is locale independent. """ # A point about three months in the past. then = self.now - (60 * 60 * 24 * 31 * 3) stat = os.stat_result((0, 0, 0, 0, 0, 0, 0, 0, then, 0)) # Fake that we're in a language where August is not Aug (e.g.: Spanish) currentLocale = locale.getlocale() locale.setlocale(locale.LC_ALL, "es_AR.UTF8") self.addCleanup(locale.setlocale, locale.LC_ALL, currentLocale) self.assertEqual( self._lsInTimezone('America/New_York', stat), '!--------- 0 0 0 0 Aug 28 17:33 foo') self.assertEqual( self._lsInTimezone('Pacific/Auckland', stat), '!--------- 0 0 0 0 Aug 29 09:33 foo') # If alternate locale is not available, the previous test will be # skipped, please install this locale for it to run
def test_setlocale_category(self): locale.setlocale(locale.LC_ALL) locale.setlocale(locale.LC_TIME) locale.setlocale(locale.LC_CTYPE) locale.setlocale(locale.LC_COLLATE) locale.setlocale(locale.LC_MONETARY) locale.setlocale(locale.LC_NUMERIC) # crasher from bug #7419 self.assertRaises(locale.Error, locale.setlocale, 12345)
def test_invalid_locale_format_in_localetuple(self): with self.assertRaises(TypeError): locale.setlocale(locale.LC_ALL, b'fi_FI')
def test_invalid_iterable_in_localetuple(self): with self.assertRaises(TypeError): locale.setlocale(locale.LC_ALL, (b'not', b'valid'))
def updateDate( self ): try: locale.setlocale( locale.LC_ALL , 'en_US' ) except locale.Error: locale.setlocale( locale.LC_ALL , 'us_us' ) except: pass self.date = datetime.datetime.now().strftime("%d-%b-%Y %H:%M:%S") # Mark the object as deleted
def set_locale(new_locale, lc_var=locale.LC_ALL): """Context manager for temporarily setting a locale. Parameters ---------- new_locale : str or tuple A string of the form <language_country>.<encoding>. For example to set the current locale to US English with a UTF8 encoding, you would pass "en_US.UTF-8". Notes ----- This is useful when you want to run a particular block of code under a particular locale, without globally setting the locale. This probably isn't thread-safe. """ current_locale = locale.getlocale() try: locale.setlocale(lc_var, new_locale) try: normalized_locale = locale.getlocale() except ValueError: yield new_locale else: if all(lc is not None for lc in normalized_locale): yield '.'.join(normalized_locale) else: yield new_locale finally: locale.setlocale(lc_var, current_locale)
def setUp(self): self.oldloc = locale.setlocale(locale.LC_ALL)
def tearDown(self): locale.setlocale(locale.LC_ALL, self.oldloc)
def test_bug_3061(self): try: tmp = locale.setlocale(locale.LC_ALL, "fr_FR") except locale.Error: self.skipTest('could not set locale.LC_ALL to fr_FR') # This should not cause an exception time.strftime("%B", (2009,2,1,0,0,0,0,0,0))
def test_fetchInternalDateLocaleIndependent(self): """ The month name in the date is locale independent. """ # Fake that we're in a language where December is not Dec currentLocale = locale.setlocale(locale.LC_ALL, None) locale.setlocale(locale.LC_ALL, "es_AR.UTF8") self.addCleanup(locale.setlocale, locale.LC_ALL, currentLocale) return self.testFetchInternalDate(1) # if alternate locale is not available, the previous test will be skipped, # please install this locale for it to run. Avoid using locale.getlocale to # learn the current locale; its values don't round-trip well on all # platforms. Fortunately setlocale returns a value which does round-trip # well.
def setup_tests(): config.use_i18n = False # Don't use i18n config.quiet = True # Don't display warnings setlocale(LC_ALL, "C")
def test_against_deb_with_conflict_against_apt(self): setlocale(LC_ALL, "C") res = self.cli.open(os.path.join(self.testdir, "gdebi-test1.deb")) self.assertFalse(res) self.assertEqual( self.cli._deb._failure_string, "Conflicts with the installed package 'apt'")
def __init__(self, iface): """Constructor. :param iface: An interface instance that will be passed to this class which provides the hook by which you can manipulate the QGIS application at run time. :type iface: QgsInterface """ # Save reference to the QGIS interface self.iface = iface # initialize plugin directory self.plugin_dir = os.path.dirname(__file__) # initialize locale userLocale = QSettings().value('locale/userLocale')[0:2] locale_path = os.path.join( self.plugin_dir, 'i18n', 'cartogram3_{}.qm'.format(userLocale)) if os.path.exists(locale_path): self.translator = QTranslator() self.translator.load(locale_path) if qVersion() > '4.3.3': QCoreApplication.installTranslator(self.translator) try: locale.setlocale( locale.LC_ALL, QSettings().value('locale/userLocale') ) except: pass # Create the dialog (after translation) and keep reference self.dialog = CartogramDialog() # filter ui: polygon layers, numeric fields only self.dialog.layerComboBox.setFilters( QgsMapLayerProxyModel.PolygonLayer ) self.dialog.fieldListView.setFilters( QgsFieldProxyModel.Numeric ) # connect changed-signal to validation function self.dialog.fieldListView.selectionModel().selectionChanged.connect( self.validateInputs ) self.actions = [] self.menu = self.tr("&Cartogram") # noinspection PyMethodMayBeStatic
def get_locales(prefix=None, normalize=True, locale_getter=_default_locale_getter): """Get all the locales that are available on the system. Parameters ---------- prefix : str If not ``None`` then return only those locales with the prefix provided. For example to get all English language locales (those that start with ``"en"``), pass ``prefix="en"``. normalize : bool Call ``locale.normalize`` on the resulting list of available locales. If ``True``, only locales that can be set without throwing an ``Exception`` are returned. locale_getter : callable The function to use to retrieve the current locales. This should return a string with each locale separated by a newline character. Returns ------- locales : list of strings A list of locale strings that can be set with ``locale.setlocale()``. For example:: locale.setlocale(locale.LC_ALL, locale_string) On error will return None (no locale available, e.g. Windows) """ try: raw_locales = locale_getter() except: return None try: # raw_locales is "\n" seperated list of locales # it may contain non-decodable parts, so split # extract what we can and then rejoin. raw_locales = raw_locales.split(b'\n') out_locales = [] for x in raw_locales: if compat.PY3: out_locales.append(str(x, encoding=pd.options.display.encoding)) else: out_locales.append(str(x)) except TypeError: pass if prefix is None: return _valid_locales(out_locales, normalize) found = re.compile('%s.*' % prefix).findall('\n'.join(out_locales)) return _valid_locales(found, normalize)