英語
高校生

I visited the city once.
この文変ですか?現在完了で経験を表せるのはわかりますが、onceで一度なので意味的にはいいのかなと思いました、。

回答

まぁそもそもなんですけど、英語と日本語って違う言語で、だから文法を習ってるわけで…。
なんとなく伝われば良いなら問題ないと思います。
しかしやはり「おかしいよなぁ」って感じますね。
onceを「一度」という経験のニュアンスで使うならやはり現在完了が適切ですね。
辞書で調べましたが、onceは「かつて」という意味もあるようです。過去形にしてしまうと、この意味が強くなると思います。
直訳すると、「かつてその町を訪れた」となります。
この訳だと1回以上訪れている可能性も考えられるので、そこで現在完了(経験の用法)の登場と。
やはり意味はズレて来るかな、と思います。

余計なお世話かもしれませんが、1つアドバイスを。
英語も日本語も言語なので根幹の論理などは同じですが、文法も違えば単語のニュアンスも少しズレがあります。
例えばhaveという動詞には「食べる」「飼っている」「持っている」などの意味がありますが、日本語では全て全く異なる意味です。これを一つ一つ覚えてたらキリがないし、なんなら実際に会話で使えません。
しかし、前述した通り根底の論理は同じなわけです。つまり、「食べる」「飼っている」「持っている」の意味も根底は同じなので、共通点があります。
僕はhaveを「何かを得て持っているイメージ」と覚えています。「何か」が何なのかは分かりません。カオスです。でも一つ一つ訳すより、抽象化して単語をイメージするようにしたら、読む速度も速くなりリスニングも聞けるようになりました。よかったら参考にしてみてください。

この回答にコメントする
疑問は解決しましたか?