Haskell 我试图列出一个具有两种数据类型的元组的详细信息,我该怎么做?

Haskell 我试图列出一个具有两种数据类型的元组的详细信息,我该怎么做?,haskell,Haskell,我试图在元组中显示数据,我该怎么做? 我的电影由字符串、字符串、Int、[]、[]和浮点组成 formFilmAsStringInt:: (Film,Float) -> String formFilmAsStringInt title,director,year,likes,dislikes,number = "Title: " ++ title ++ "\nDirector: " ++ director ++ "\nYear:" ++ show year ++ "\nLikes:"

我试图在元组中显示数据,我该怎么做? 我的电影由字符串、字符串、Int、[]、[]和浮点组成

formFilmAsStringInt:: (Film,Float) -> String
formFilmAsStringInt title,director,year,likes,dislikes,number  = "Title: " ++ 
title ++ "\nDirector: " ++ director ++  "\nYear:" ++ show year ++ "\nLikes:" 
++ unwords likes ++ " \nDislikes: " ++ unwords dislikes ++"\n\n"
似乎是对的一个很好的使用,但是如果模式匹配得当,您可以使用代码

formFilmAsStringInt title,director,year,likes,dislikes,number 
使用printf,我会写:

formFilmAsStringInt :: (Film, Float) -> String
formFilmAsStringInt ((Film title director year likes dislikes), number) =
  -- what you wrote above

请提供完整的代码,包括电影类型。Film=Title,Director,Year,Likes,Dislikes-where Title,Director=String,Year=Int,Likes,Dislikes=[User],User=String我想显示电影的信息,注意你没有用数字做任何事情-为什么要包括它?我本来应该添加数字的,但忘了,谢谢你的帮助
import Text.Printf (printf)

formFilmAsStringInt :: (Film, Float) -> String
formFilmAsStringInt ((Film title director year likes dislikes), number) =
  let template = "Title: %s\n\
                 \Director: %s\n\
                 \Year: %d\n\
                 \Likes: %s\n\
                 \Dislikes: %s\n\n"
  in  printf template title director year likes dislikes