• Linux yum 运行时提示编码问题错误


    1. 报错:
      UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal

    2. 解决:

    这个报错是编码问题导致的
    在文件头加上
    # -*- coding:utf-8 -*-

    对需要比较的中文字符变量如:
    label = label.decode('utf-8')

    1. 具体实例:
      1. 问题展示:
      [root@localhost .pyenv]# yum-config-manager –add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
      已加载插件:fastestmirror, langpacks
      /usr/lib/python2.7/site-packages/yum/misc.py:133: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
        return lambda s: s.lower() == pat
      
      • 1
      • 2
      • 3
      • 4
      1. 问题解决:
      1 # -*- coding:utf-8 -*-
      2 #! /usr/bin/python -tt
      3 """
      4 Assorted utility functions for yum.
      5 """
      6
      7 import types
      8 import os
      9 import sys
      10 import os.path
      11 from cStringIO import StringIO
      12 import base64
      13 import binascii
      14 import struct
      15 import re
      16 import errno
      17 import Errors
      18 import constants
      19 import pgpmsg
      20 import tempfile
      21 import glob
      22 import pwd
      23 import fnmatch
      24 import bz2
      25 import gzip
      26 import shutil
      27 import urllib
      28 import string
      ......
      124 def compile_pattern(pat, ignore_case=False):
      125     """ Compile shell wildcards, return a 'match' function. """
      126     if re_glob(pat):
      127         try:
      128             flags = ignore_case and re.I or 0
      129             return re.compile(fnmatch.translate(pat), flags).match
      130         except re.error:
      131             pass # fall back to exact match
      132     if ignore_case:
      133         pat = pat.lower()
      134         return lambda s: s.lower() == pat.decode('utf-8')
      135     return lambda s: s == pat
      
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
      • 23
      • 24
      • 25
      • 26
      • 27
      • 28
      • 29
      • 30
      • 31
      • 32
      • 33
      • 34
      • 35
      • 36
      • 37
      • 38
      • 39
      • 40
      • 41
      • 42
      1. 再次测试:
      [root@localhost .pyenv]# yum-config-manager –add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
      已加载插件:fastestmirror, langpacks
      [root@localhost .pyenv]# yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
      已加载插件:fastestmirror, langpacks
      adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
      grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
      repo saved to /etc/yum.repos.d/docker-ce.repo
      [root@localhost .pyenv]# 
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8

    分享一个有趣的 学习链接:https://xxetb.xet.tech/s/HY8za

  • 相关阅读:
    rabbitMQ:绑定Exchange发送和接收消息(topic)
    Linux vim 报错 E437
    HashMap与HashSet的底层实现原理
    22 年国内最牛的 Java 面试八股文合集(全彩版),不接受反驳
    基于Tomcat配置JNDI数据源完整演示
    解读提示工程(Prompt Engineering)
    【Socket】解决TCP粘包问题
    前端编译与优化(Javac,语法糖)
    MySQL笔记2(函数,约束,多表查询,事务)
    CSS图像样式
  • 原文地址:https://blog.csdn.net/qq_29111047/article/details/134485615