Как удалить что-то в txt, используя python, и оставить некоторые из них в txt - PullRequest
2 голосов
/ 10 июля 2020

Итак, для того, что я хочу сделать, я просто хочу удалить некоторые специфические c вещи, которые есть в моем файле, например, у меня есть это

json_str = '{"previousPageCursor":null,"nextPageCursor":"23971776_1_0c424f10e6a8a73392287b04ef20267c","data":[{"buildersClubMembershipType":"None","userId":29661084,"username":"HeartlessGod","displayName":"HeartlessGod"},{"buildersClubMembershipType":"None","userId":2736666,"username":"thunderbolt777","displayName":"thunderbolt777"},{"buildersClubMembershipType":"None","userId":9509309,"username":"FlyScript","displayName":"FlyScript"},{"buildersClubMembershipType":"None","userId":9933671,"username":"XcRaZeD","displayName":"XcRaZeD"},{"buildersClubMembershipType":"None","userId":1484736,"username":"dodo212","displayName":"dodo212"},{"buildersClubMembershipType":"None","userId":10026270,"username":"wassup99","displayName":"wassup99"},{"buildersClubMembershipType":"None","userId":559756,"username":"jack593","displayName":"jack593"},{"buildersClubMembershipType":"None","userId":6160107,"username":"spectacularmario","displayName":"spectacularmario"},{"buildersClubMembershipType":"None","userId":7706434,"username":"dustyscoobydoo","displayName":"dustyscoobydoo"},{"buildersClubMembershipType":"None","userId":1335986,"username":"dooter","displayName":"dooter"}]}'

И все, что я хочу сделать, это сохраните числа, которые я обвел, удалите все остальные и поставьте их в ряд друг на друга

Ответы [ 2 ]

2 голосов
/ 10 июля 2020

Вы можете проанализировать Json с помощью модуля json, например:

json_data = '''
    {"previousPageCursor":null,"nextPageCursor":"23971776_1_0c424f10e6a8a73392287b04ef20267c","data":[{"buildersClubMembershipType":"None","userId":29661084,"username":"HeartlessGod","displayName":"HeartlessGod"},{"buildersClubMembershipType":"None","userId":2736666,"username":"thunderbolt777","displayName":"thunderbolt777"},{"buildersClubMembershipType":"None","userId":9509309,"username":"FlyScript","displayName":"FlyScript"},{"buildersClubMembershipType":"None","userId":9933671,"username":"XcRaZeD","displayName":"XcRaZeD"},{"buildersClubMembershipType":"None","userId":1484736,"username":"dodo212","displayName":"dodo212"},{"buildersClubMembershipType":"None","userId":10026270,"username":"wassup99","displayName":"wassup99"},{"buildersClubMembershipType":"None","userId":559756,"username":"jack593","displayName":"jack593"},{"buildersClubMembershipType":"None","userId":6160107,"username":"spectacularmario","displayName":"spectacularmario"},{"buildersClubMembershipType":"None","userId":7706434,"username":"dustyscoobydoo","displayName":"dustyscoobydoo"},{"buildersClubMembershipType":"None","userId":1335986,"username":"dooter","displayName":"dooter"}]}
'''

import json

parsed_data = json.loads(json_data)

for d in parsed_data['data']:
    print(d['userId'])

Выводит:

29661084
2736666
9509309
9933671
1484736
10026270
559756
6160107
7706434
1335986

Вероятно, вы получили эти данные от requests.get() или requests.post(), вы можете получить данные с помощью этого вызова:

parsed_data = requests.get(... URL HERE ...).json()
1 голос
/ 10 июля 2020

Извлеките все числа и распечатайте их:

import json

text = """
{"previousPageCursor":null,
 "nextPageCursor":"23971776_1_0c424f10e6a8a73392287b04ef20267c",
 "data":[{"buildersClubMembershipType":"None",
          "userId":29661084,
          "username":"HeartlessGod",
          "displayName":"HeartlessGod"
          },
          {"buildersClubMembershipType":"None",
           "userId":2736666,
           "username":"thunderbolt777",
           "displayName":"thunderbolt777"
           },
          {"buildersClubMembershipType":"None",
           "userId":9509309,
           "username":"FlyScript",
           "displayName":"FlyScript"
           },
           {"buildersClubMembershipType":"None",
            "userId":9933671,
            "username":"XcRaZeD",
            "displayName":"XcRaZeD"
            },
            {"buildersClubMembershipType":"None",
            "userId":1484736,
            "username":"dodo212",
              "displayName":"dodo212"
              },
              {"buildersClubMembershipType":"None",
              "userId":10026270,
              "username":"wassup99",
              "displayName":"wassup99"
              },
              {"buildersClubMembershipType":"None",
               "userId":559756,
               "username":"jack593",
               "displayName":"jack593"
               },
               {"buildersClubMembershipType":"None",
                "userId":6160107,
                "username":"spectacularmario",
                "displayName":"spectacularmario"
                },
                {"buildersClubMembershipType":"None",
                 "userId":7706434,
                 "username":"dustyscoobydoo",
                 "displayName":"dustyscoobydoo"
                 },
                 {"buildersClubMembershipType":"None",
                  "userId":1335986,
                  "username":"dooter",
                  "displayName":"dooter"
                  }
                  ]
                  }
"""

p = json.loads(text)
numbers = [dictionary['userId'] for dictionary in p['data']]
for number in numbers:
    print(number)

Возвращает:

29661084
2736666
9509309
9933671
1484736
10026270
559756
6160107
7706434
1335986
...