社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

在python中操作文本文件并创建新的文本文件

user10657934 • 4 年前 • 879 次点击  

我将新模型和标签文件都复制到ios应用程序中。应用程序参数如下:

toco \
    --graph_def_file=pola_retrained.pb \
    --output_file=mobilenet_v1_1.0_224.tflite \
    --input_format=TENSORFLOW_GRAPHDEF \
    --output_format=TFLITE \
    --inference_type=QUANTIZED_UINT8 \
    --inference_input_type=QUANTIZED_UINT8 \
    --input_array=Placeholder \
    --output_array=final_result \
    --input_shape=1,224,224,3\
    --default_ranges_min=0 \
    --default_ranges_max=6 \
    --mean_value=128 \
    --std_dev_values=128 \
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/42935
 
879 次点击  
文章 [ 2 ]  |  最新文章 4 年前
blhsing
Reply   •   1 楼
blhsing    5 年前

您可以将sum与生成器表达式一起使用,以小的形式计算与条件匹配的行数,然后使用str.join生成所需的输出:

major = '''chr1    +   1071396 1271396 LOC
chr12   +   1101483 1121483 MIR200B'''

minor = '''chr1    1071496 1071536 1
chr1    1071536 1071566 0
chr1    1073566 1073366 1
chr12   1101487 1101516 0
chr12   1101625 1101671 1'''

major, minor = ([l.split() for l in d.splitlines()] for d in (major, minor))

for name_major, sign, low, high, note in major:
    parts = list(range(int(low), int(high) + 1, (int(high) - int(low)) // 100))
    for part, (low, high) in enumerate(zip(parts, parts[1:]), 1):
        count = sum(1 for name_minor, n1, n2, _ in minor if name_major == name_minor and all(low <= int(n) <= high for n in (n1, n2)))
        print('\t'.join((name_major, sign, str(low), str(high), note, '%s_part%d' % (note, part), str(count))))

这将输出:

chr1    +   1071396 1073396 LOC LOC_part1   2
chr1    +   1073396 1075396 LOC LOC_part2   0
chr1    +   1075396 1077396 LOC LOC_part3   0
chr1    +   1077396 1079396 LOC LOC_part4   0
chr1    +   1079396 1081396 LOC LOC_part5   0
chr1    +   1081396 1083396 LOC LOC_part6   0
chr1    +   1083396 1085396 LOC LOC_part7   0
chr1    +   1085396 1087396 LOC LOC_part8   0
chr1    +   1087396 1089396 LOC LOC_part9   0
chr1    +   1089396 1091396 LOC LOC_part10  0
chr1    +   1091396 1093396 LOC LOC_part11  0
chr1    +   1093396 1095396 LOC LOC_part12  0
chr1    +   1095396 1097396 LOC LOC_part13  0
chr1    +   1097396 1099396 LOC LOC_part14  0
chr1    +   1099396 1101396 LOC LOC_part15  0
chr1    +   1101396 1103396 LOC LOC_part16  0
chr1    +   1103396 1105396 LOC LOC_part17  0
chr1    +   1105396 1107396 LOC LOC_part18  0
chr1    +   1107396 1109396 LOC LOC_part19  0
chr1    +   1109396 1111396 LOC LOC_part20  0
chr1    +   1111396 1113396 LOC LOC_part21  0
chr1    +   1113396 1115396 LOC LOC_part22  0
chr1    +   1115396 1117396 LOC LOC_part23  0
chr1    +   1117396 1119396 LOC LOC_part24  0
chr1    +   1119396 1121396 LOC LOC_part25  0
chr1    +   1121396 1123396 LOC LOC_part26  0
chr1    +   1123396 1125396 LOC LOC_part27  0
chr1    +   1125396 1127396 LOC LOC_part28  0
chr1    +   1127396 1129396 LOC LOC_part29  0
chr1    +   1129396 1131396 LOC LOC_part30  0
chr1    +   1131396 1133396 LOC LOC_part31  0
chr1    +   1133396 1135396 LOC LOC_part32  0
chr1    +   1135396 1137396 LOC LOC_part33  0
chr1    +   1137396 1139396 LOC LOC_part34  0
chr1    +   1139396 1141396 LOC LOC_part35  0
chr1    +   1141396 1143396 LOC LOC_part36  0
chr1    +   1143396 1145396 LOC LOC_part37  0
chr1    +   1145396 1147396 LOC LOC_part38  0
chr1    +   1147396 1149396 LOC LOC_part39  0
chr1    +   1149396 1151396 LOC LOC_part40  0
chr1    +   1151396 1153396 LOC LOC_part41  0
chr1    +   1153396 1155396 LOC LOC_part42  0
chr1    +   1155396 1157396 LOC LOC_part43  0
chr1    +   1157396 1159396 LOC LOC_part44  0
chr1    +   1159396 1161396 LOC LOC_part45  0
chr1    +   1161396 1163396 LOC LOC_part46  0
chr1    +   1163396 1165396 LOC LOC_part47  0
chr1    +   1165396 1167396 LOC LOC_part48  0
chr1    +   1167396 1169396 LOC LOC_part49  0
chr1    +   1169396 1171396 LOC LOC_part50  0
chr1    +   1171396 1173396 LOC LOC_part51  0
chr1    +   1173396 1175396 LOC LOC_part52  0
chr1    +   1175396 1177396 LOC LOC_part53  0
chr1    +   1177396 1179396 LOC LOC_part54  0
chr1    +   1179396 1181396 LOC LOC_part55  0
chr1    +   1181396 1183396 LOC LOC_part56  0
chr1    +   1183396 1185396 LOC LOC_part57  0
chr1    +   1185396 1187396 LOC LOC_part58  0
chr1    +   1187396 1189396 LOC LOC_part59  0
chr1    +   1189396 1191396 LOC LOC_part60  0
chr1    +   1191396 1193396 LOC LOC_part61  0
chr1    +   1193396 1195396 LOC LOC_part62  0
chr1    +   1195396 1197396 LOC LOC_part63  0
chr1    +   1197396 1199396 LOC LOC_part64  0
chr1    +   1199396 1201396 LOC LOC_part65  0
chr1    +   1201396 1203396 LOC LOC_part66  0
chr1    +   1203396 1205396 LOC LOC_part67  0
chr1    +   1205396 1207396 LOC LOC_part68  0
chr1    +   1207396 1209396 LOC LOC_part69  0
chr1    +   1209396 1211396 LOC LOC_part70  0
chr1    +   1211396 1213396 LOC LOC_part71  0
chr1    +   1213396 1215396 LOC LOC_part72  0
chr1    +   1215396 1217396 LOC LOC_part73  0
chr1    +   1217396 1219396 LOC LOC_part74  0
chr1    +   1219396 1221396 LOC LOC_part75  0
chr1    +   1221396 1223396 LOC LOC_part76  0
chr1    +   1223396 1225396 LOC LOC_part77  0
chr1    +   1225396 1227396 LOC LOC_part78  0
chr1    +   1227396 1229396 LOC LOC_part79  0
chr1    +   1229396 1231396 LOC LOC_part80  0
chr1    +   1231396 1233396 LOC LOC_part81  0
chr1    +   1233396 1235396 LOC LOC_part82  0
chr1    +   1235396 1237396 LOC LOC_part83  0
chr1    +   1237396 1239396 LOC LOC_part84  0
chr1    +   1239396 1241396 LOC LOC_part85  0
chr1    +   1241396 1243396 LOC LOC_part86  0
chr1    +   1243396 1245396 LOC LOC_part87  0
chr1    +   1245396 1247396 LOC LOC_part88  0
chr1    +   1247396 1249396 LOC LOC_part89  0
chr1    +   1249396 1251396 LOC LOC_part90  0
chr1    +   1251396 1253396 LOC LOC_part91  0
chr1    +   1253396 1255396 LOC LOC_part92  0
chr1    +   1255396 1257396 LOC LOC_part93  0
chr1    +   1257396 1259396 LOC LOC_part94  0
chr1    +   1259396 1261396 LOC LOC_part95  0
chr1    +   1261396 1263396 LOC LOC_part96  0
chr1    +   1263396 1265396 LOC LOC_part97  0
chr1    +   1265396 1267396 LOC LOC_part98  0
chr1    +   1267396 1269396 LOC LOC_part99  0
chr1    +   1269396 1271396 LOC LOC_part100 0
chr12   +   1101483 1101683 MIR200B MIR200B_part1   2
chr12   +   1101683 1101883 MIR200B MIR200B_part2   0
chr12   +   1101883 1102083 MIR200B MIR200B_part3   0
chr12   +   1102083 1102283 MIR200B MIR200B_part4   0
chr12   +   1102283 1102483 MIR200B MIR200B_part5   0
chr12   +   1102483 1102683 MIR200B MIR200B_part6   0
chr12   +   1102683 1102883 MIR200B MIR200B_part7   0
chr12   +   1102883 1103083 MIR200B MIR200B_part8   0
chr12   +   1103083 1103283 MIR200B MIR200B_part9   0
chr12   +   1103283 1103483 MIR200B MIR200B_part10  0
chr12   +   1103483 1103683 MIR200B MIR200B_part11  0
chr12   +   1103683 1103883 MIR200B MIR200B_part12  0
chr12   +   1103883 1104083 MIR200B MIR200B_part13  0
chr12   +   1104083 1104283 MIR200B MIR200B_part14  0
chr12   +   1104283 1104483 MIR200B MIR200B_part15  0
chr12   +   1104483 1104683 MIR200B MIR200B_part16  0
chr12   +   1104683 1104883 MIR200B MIR200B_part17  0
chr12   +   1104883 1105083 MIR200B MIR200B_part18  0
chr12   +   1105083 1105283 MIR200B MIR200B_part19  0
chr12   +   1105283 1105483 MIR200B MIR200B_part20  0
chr12   +   1105483 1105683 MIR200B MIR200B_part21  0
chr12   +   1105683 1105883 MIR200B MIR200B_part22  0
chr12   +   1105883 1106083 MIR200B MIR200B_part23  0
chr12   +   1106083 1106283 MIR200B MIR200B_part24  0
chr12   +   1106283 1106483 MIR200B MIR200B_part25  0
chr12   +   1106483 1106683 MIR200B MIR200B_part26  0
chr12   +   1106683 1106883 MIR200B MIR200B_part27  0
chr12   +   1106883 1107083 MIR200B MIR200B_part28  0
chr12   +   1107083 1107283 MIR200B MIR200B_part29  0
chr12   +   1107283 1107483 MIR200B MIR200B_part30  0
chr12   +   1107483 1107683 MIR200B MIR200B_part31  0
chr12   +   1107683 1107883 MIR200B MIR200B_part32  0
chr12   +   1107883 1108083 MIR200B MIR200B_part33  0
chr12   +   1108083 1108283 MIR200B MIR200B_part34  0
chr12   +   1108283 1108483 MIR200B MIR200B_part35  0
chr12   +   1108483 1108683 MIR200B MIR200B_part36  0
chr12   +   1108683 1108883 MIR200B MIR200B_part37  0
chr12   +   1108883 1109083 MIR200B MIR200B_part38  0
chr12   +   1109083 1109283 MIR200B MIR200B_part39  0
chr12   +   1109283 1109483 MIR200B MIR200B_part40  0
chr12   +   1109483 1109683 MIR200B MIR200B_part41  0
chr12   +   1109683 1109883 MIR200B MIR200B_part42  0
chr12   +   1109883 1110083 MIR200B MIR200B_part43  0
chr12   +   1110083 1110283 MIR200B MIR200B_part44  0
chr12   +   1110283 1110483 MIR200B MIR200B_part45  0
chr12   +   1110483 1110683 MIR200B MIR200B_part46  0
chr12   +   1110683 1110883 MIR200B MIR200B_part47  0
chr12   +   1110883 1111083 MIR200B MIR200B_part48  0
chr12   +   1111083 1111283 MIR200B MIR200B_part49  0
chr12   +   1111283 1111483 MIR200B MIR200B_part50  0
chr12   +   1111483 1111683 MIR200B MIR200B_part51  0
chr12   +   1111683 1111883 MIR200B MIR200B_part52  0
chr12   +   1111883 1112083 MIR200B MIR200B_part53  0
chr12   +   1112083 1112283 MIR200B MIR200B_part54  0
chr12   +   1112283 1112483 MIR200B MIR200B_part55  0
chr12   +   1112483 1112683 MIR200B MIR200B_part56  0
chr12   +   1112683 1112883 MIR200B MIR200B_part57  0
chr12   +   1112883 1113083 MIR200B MIR200B_part58  0
chr12   +   1113083 1113283 MIR200B MIR200B_part59  0
chr12   +   1113283 1113483 MIR200B MIR200B_part60  0
chr12   +   1113483 1113683 MIR200B MIR200B_part61  0
chr12   +   1113683 1113883 MIR200B MIR200B_part62  0
chr12   +   1113883 1114083 MIR200B MIR200B_part63  0
chr12   +   1114083 1114283 MIR200B MIR200B_part64  0
chr12   +   1114283 1114483 MIR200B MIR200B_part65  0
chr12   +   1114483 1114683 MIR200B MIR200B_part66  0
chr12   +   1114683 1114883 MIR200B MIR200B_part67  0
chr12   +   1114883 1115083 MIR200B MIR200B_part68  0
chr12   +   1115083 1115283 MIR200B MIR200B_part69  0
chr12   +   1115283 1115483 MIR200B MIR200B_part70  0
chr12   +   1115483 1115683 MIR200B MIR200B_part71  0
chr12   +   1115683 1115883 MIR200B MIR200B_part72  0
chr12   +   1115883 1116083 MIR200B MIR200B_part73  0
chr12   +   1116083 1116283 MIR200B MIR200B_part74  0
chr12   +   1116283 1116483 MIR200B MIR200B_part75  0
chr12   +   1116483 1116683 MIR200B MIR200B_part76  0
chr12   +   1116683 1116883 MIR200B MIR200B_part77  0
chr12   +   1116883 1117083 MIR200B MIR200B_part78  0
chr12   +   1117083 1117283 MIR200B MIR200B_part79  0
chr12   +   1117283 1117483 MIR200B MIR200B_part80  0
chr12   +   1117483 1117683 MIR200B MIR200B_part81  0
chr12   +   1117683 1117883 MIR200B MIR200B_part82  0
chr12   +   1117883 1118083 MIR200B MIR200B_part83  0
chr12   +   1118083 1118283 MIR200B MIR200B_part84  0
chr12   +   1118283 1118483 MIR200B MIR200B_part85  0
chr12   +   1118483 1118683 MIR200B MIR200B_part86  0
chr12   +   1118683 1118883 MIR200B MIR200B_part87  0
chr12   +   1118883 1119083 MIR200B MIR200B_part88  0
chr12   +   1119083 1119283 MIR200B MIR200B_part89  0
chr12   +   1119283 1119483 MIR200B MIR200B_part90  0
chr12   +   1119483 1119683 MIR200B MIR200B_part91  0
chr12   +   1119683 1119883 MIR200B MIR200B_part92  0
chr12   +   1119883 1120083 MIR200B MIR200B_part93  0
chr12   +   1120083 1120283 MIR200B MIR200B_part94  0
chr12   +   1120283 1120483 MIR200B MIR200B_part95  0
chr12   +   1120483 1120683 MIR200B MIR200B_part96  0
chr12   +   1120683 1120883 MIR200B MIR200B_part97  0
chr12   +   1120883 1121083 MIR200B MIR200B_part98  0
chr12   +   1121083 1121283 MIR200B MIR200B_part99  0
chr12   +   1121283 1121483 MIR200B MIR200B_part100 0

注意,您的预期输出不正确,因为 chr1 1073566 1073366 1 你的 minor 文件不在同一范围内 major 部分。

Aurora Wang
Reply   •   2 楼
Aurora Wang    5 年前

您应该注意以下几点,它们可能有助于您修复代码:

  1. 检查变量名: 例如,在代码的开头,您将覆盖属于 major minor 空名单;
  2. 跟踪您的循环正在执行的操作:
    • 如果你说你想 new_major 带行数 “是主文件行数的100倍 “,您可能应该有一个内部循环,该循环在外部循环中为 major file (而不是重复 percent );
    • 您可能需要重新考虑生成 final 名单。如果你的目标是增加 小精灵 带行 “第七栏” 如果您的外部循环正在迭代 纽氏大 线。然后,您可以让内部循环负责计算次要文件中的行数。
  3. 尝试以增量方式实现/测试您的代码: 很明显,你的脑海中有你应该做的步骤(正如你能够描述的那样)。试着一步一步地执行和测试每个步骤。一 “有点复杂” 小问题总是可以解决的。
    • 利用python作为解释语言的优势,使测试逻辑/代码的小部分变得更容易和更快;
    • 例如,尝试生成 小精灵 之前正确归档 试着做剩下的。如果你这样做,你会注意到 new_major.append 例如,line没有使用列 一行的值。(你必须分线才能 这些价值观)。

  1. [附加]对解决方案的复杂性进行练习: 在这种情况下,复杂性对你来说可能不是问题,但是让你自己去思考这种事情总是很好的。想象一下你有很长的时间 少数的 专业 文件,在它们上重复多次可能会很昂贵。根据第一列的值,您可以做的一件小事是将小文件“分解”为多个部分(可能使用 dict )因此,如果你计算 少数的 符合a的条目 专业 row,您将只迭代具有与引用行相同的第一列值的条目。