아하 로고
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
화려한삵37
화려한삵3721.03.31

이거 괄호 없이 저 모양으로 나타낼라면 어떻게 해야하죠?

알려주세요 설명도 해주시면 더욱 감사해요!..............................................................

55글자 더 채워주세요.
답변의 개수7개의 답변이 있어요!
  • 안녕하세요!

    괄호없이 저 모양이 무슨 모양인지 몰라서.. 그냥 괄호를 제거할 수 있는 코드를 작성했습니다.

    c = [[1, 2, 3], [4, 5], [6], [7, 8, 9, 10]] for arr in c: // Python은 range를 사용하지 않고 iterable 객체를 직접 넣어 Loop를 돌릴 수 있음 print(', '.join(str(element) for element in arr))

    위 코드를 통해 원하시는 결과를 얻으실 수 있습니다.

    일단 3번째 줄이 조금 긴데요..

    조금 풀어 쓰면 아래와 같습니다.

    for number in arr: number_in_string = str(number) print(', '.join(number_in_string))

    배열 안에 또 다른 배열이 들어있는 형태이기 때문에, [] 문자를 제거하기 위해서는 안에 있는 원소를 하나씩 출력해주면 되겠네요.

    배열 안에 있는 원소가 int 타입이기 때문에 str으로 타입캐스팅 해주고, string의 join() 메소드를 이용하여 하나의 문자열로 합칩니다.

    그리고 합쳐진 문자열을 출력하게 됩니다.

    이를 generator를 이용하여 작성한 코드가 위의 코드입니다.

    아래의 레퍼런스를 참조해보세요!

    Python Generator: https://realpython.com/introduction-to-python-generators/

    string.join() : https://docs.python.org/3/library/stdtypes.html#str.join


  • 안녕하세요.

    리스트 안에 리스트가 있는 형태 이므로

    c[0] 은 [1,2,3] 이면

    접근하려면 인덱스를 한번더 적어주시면 됩니다.

    print( c[0][0],c[0][1],c[0][1] )

    출력결과 : 1 2 3

    c[1],c[2]도 마찬가지로 한번더 인덱스 접근하셔서

    출력해주시면 됩니다.


  • 안녕하세요

    원하시는 출력 결과가 괄호만 제외하시는 것일까요?

    for i in range(len(c)): print(",".join(list(map(str,c[i]))))

    위와같이 진행하시면 될 것 같습니다.

    간단히 설명 드리면 map 을 통해 str으로 형변환 한 결과물을 list로 다시 바꾸고, 컴마구분으로 조인하여 하나의 문자열을 만든다음 출력합니다.


  • 대부분 언어에서는 한줄 입력에 대해서는 스코프(중괄호)를 생략가능하고 사용 할 수 있습니다.

    C언어 기준

    #include <stdio.h> int main() { for (int i = 0; i < 100; i++) printf("Hello, world!\n"); // 반복할 코드가 한 줄이라면 중괄호 생략 for (int i = 0; i < 100; i++) { // 반복할 코드가 두 줄 이상이라면 중괄호로 묶어줌 printf("for 반복문\n"); printf("Hello, world!\n"); } return 0; }


  • 안녕하세요

    문의하신 질문에서 C라는 배열에 이미 괄호로 또 배열을 만들었기 때문에 나오는 겁니다.

    Replace를 사용하여 [,]를 공백으로 만들어 출력하는게 하나의 방법입니다.

    이 방법은 문자를 치환하는 방법인데 이게 제일 간단하고,

    아니면 맨 앞과 맨 뒤 문자열을 제거하는 방법을 사용해서 출력하시면 됩니다.


  • 안녕하세요. 자바 웹개발자 로긴햇어요 입니다.

    배열안에 또다른 배열들이 있는거보니 2차원배열같네요. 언어가 뭔지는 모르겠으나 방법은 다양합니다. 배열의 길이만큼 루프를 돌려가면서 .split(","); 을 사용하여 추출한다거나 자바에선 stream을 이용하는방법도있지만 언어가 달라서 어떤함수를 사용하라고 말씀드리긴 애매하네요. 저런건 검색창에 2차원배열 검색하면 나옵니다.

    도움이 되셨길 바래요


  • 탈퇴한 사용자
    탈퇴한 사용자21.03.31

    for x in c:

    print(x)

    로하시면 괄호를 사용하지 않고 표현 할 수 있습니다.

    in 뒤에 c를 그대로 사용하면 c의 원소들이 반복적으로 x에 들어가게 되고

    따라서 바로 print(x)를 한다면 괄호를 사용하지 않고 원하는 방식을 나타낼 수 있습니다.

    이해가 안되시면 따로 댓글 남겨주세요.