Before you can analyse a sequence you have to be able to read it in, hold it in a
variable, and print something useful about it. This is the smallest complete program in bioinformatics:
input, a couple of derived values, formatted output. Getting comfortable with f-strings and basic
arithmetic here is what makes every later problem readable rather than a wall of string concatenation.
Statement
Read a sequence identifier on the first line and a DNA sequence on the second line.
Print a three-line report:
ID: <identifier>
Length: <number of bases>
First base: <the first character of the sequence>
Match the labels and spacing exactly as shown.
Input — read from standard input
| Variable | Type | Description |
|---|---|---|
identifier
line 1
|
str |
The sequence identifier
1 <= len(identifier) <= 50, no spaces
|
seq
line 2
|
str |
The DNA sequence
1 <= len(seq) <= 1000, uppercase A, C, G, T only
|
These variables are already read for you in the starter code on the right.
Output
str three labelled lines reporting the identifier, sequence length, and first base
Sample Cases
BRCA1_exon2
ATGGATTTATCTGCTCTTCG
ID: BRCA1_exon2
Length: 20
First base: A
seq1
G
ID: seq1
Length: 1
First base: G
Submit also runs your code against 3 hidden test cases. Hidden inputs are never shown — if one fails you'll get its number and a description of the mismatch, not the data.
Constraints
- The identifier contains no spaces
1 <= length(seq) <= 1000- Labels must appear exactly as
ID:,Length:andFirst base:with a single space after each colon
Further Reading
len()gives the sequence length in one call.- Indexing with
seq[0]retrieves the first character. - An f-string such as
f"ID: {identifier}"keeps the formatting readable.