Sure.
Track Rating - Mid(★★★★★, 0, [Rating]);Album Rating - Mid(★★★★★,0,[{Album Rating}])/##/If(IsEqual(Right([{Album Rating}], 2), .5), ☆, )&datatype=[list]
In the expression language, placing a semicolon in the output, and then coercing the datatype to list, creates separate entries. Alternatively, you can use ListBuild to join the items:
ListBuild(1, ;,
Track Rating - Mid(★★★★★, 0, [Rating]),
Album Rating - Mid(★★★★★, 0,
[{Album Rating}])/##/if(IsEqual(Right([{Album Rating}], 2), .5), ☆,))&datatype=[list]
I didn't bother to remove the empty entries.
Also, I realize the earlier expression is not quite correct - your original post had Album Rating and Rating reversed. The expression posted in this thread fixes that.
Edit: Fixed expression.