Q:

POS count of first word in sentences using SPACY

Intent is to check the POS of first word of sentences and return the POS count of it using Spacy.
Effort so far:
import spacy
from collections import Counter
nlp = spacy.load("en_core_web_sm")
doc = nlp("The cat slept well. Dog is good.")
for sent in doc.sents:
    for token in sent:
        if token.i == 0:
            c = Counter(([token.pos_ for token in sent for sent in doc.sents]))
            print (c)

Output: 
Counter({'DET': 2, 'NOUN': 2, 'VERB': 2, 'ADV': 2, 'PUNCT': 2})

Considering POS for 'the' is DET and 'Dog' is PROPN
Desired output:
    DET: 1
    PROPN: 1

A:

Your if condition evaluates to True only for the first token of the first sentence. The Counter counts POS tags of the tokens of the first sentence twice (i.e. # of sentences). That's why your Counter outputs the value 2 for all tags.
Here is the code doing what you want:
from collections import Counter
import spacy

nlp = spacy.load("en_core_web_sm")
doc = nlp("The cat slept well. Dog is good.")
c = Counter((sent[0].pos_ for sent in doc.sents))
print(c)

