묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
코딩이 안되는데, 이유를 잘 모르겠습니다......
안녕하세요, 선생님 질문이 있습니다. 제 코딩에서 처음 오류 뜨는 게 문법적 오류인데 else: ##ERROR 문법적 오류 print("{0} : 체력이 부족하여 스팀팩을 사용하지 않습니다.".format(self.name)) 아무리 봐도 저기에 문법적 오류가 없어서... 제 노트북이 잘못된 건지 제가 코딩을 이상하게 했는지 여쭤보고 싶습니다... 처음에 비주얼 코드에 파이썬 프로그램을 잘못 받아서 실행이 안되더라고요...! 그래서 지금은 구글의 colab을 이용하고 있습니다... #########################[ERROR] from random import* #일반 유닛 class Unit: def __init__(self, name, hp, speed): self.name=name self.hp=hp self.speed=speed print("{0} 유닛이 생성됐습니다.".format(self.name)) def move(self, location): print("{0} : {1} 방향으로 이동합니다 [속도 {2}]"\ .format(self.name, location, self.speed)) def damaged(self, damage): print("{0} : {1} 데미지를 입었습니다.".format(self.name, damage)) self.hp -= damage print("{0} : 현재 체력은 {1}입니다.".format(self.name, self.hp)) if self.hp <= 0: print("{0} : 파괴되었습니다.".format(self.name)) #공격 유닛 class AttackUnit(Unit): def __init__(self, name, hp, speed): Unit.__init__(self, name, hp, speed) self.damage=damage def attack(self, location): print("{0} : {1} 방향으로 적군을 공격합니다. [공격력 {2}]".format(self.name, location, self.damage)) #마린 class Marine(AttackUnit): def __init__(self): AttackUnit.__init__(self, "마린", 40, 1, 5) def stimpack(self): if self.hp > 10: self.hp -= 10 print("{0} : 스팀팩을 사용합니다. (HP 10 감소)".format(self.name)) else: ##ERROR 문법적 오류 print("{0} : 체력이 부족하여 스팀팩을 사용하지 않습니다.".format(self.name)) #탱크 class Tank(AttackUnit): seize_developed = False ##[?] AttackUnit.__init__(~) 밑에 넣으면 안되나? def __init__(self): AttackUnit.__init__(self, "탱크",150, 1, 35) self.seize_mode = False def set_seize_mode(self): if Tank.seize_developed == False: return # 현재 시즈모드가 아닐 때 시드모즈로 변경 if self.seize_mode == False: print("{0} : 시즈모드로 변경합니다.".format(self.name)) seize.damage*=2 self.seize_mode = True # 현재 시즈모드일 때 시즈모드 해제 else: print("{0} : 시즈모드를 해제합니다.".format(self.name)) self.damage/=2 self.seize_mode = False #비행기 class Flyable: def __init__(self, flying_speed): self.fly=flying_speed def fly(self, name, location): print("{0} : {1} 방향으로 날아갑니다. [속도 {2}]"\ .format(name, location, self.flying_speed)) #공격하는 비행기 class FlyableAttackUnit(AttackUnit, Flyable): def __init__(self, name, hp, damage, flying_speed): AttackUnit.__init__(self, name, hp, 0, damage) Flyable.__init__(self, flying_speed) def move(self, location): print("[공중 유닛 이동]") self.fly(self.name, location) ##ERROR #레이스 class Wraith(FlyableAttackUnit): def __init__(self): FlyableAttackUnit.__init__(self, "레이스", 80, 20, 5) self.clocked = False def clocking(self): if self.clocked == True: print("{0} : 클로킹 모드 해제합니다.".format(self.name)) self.clocked == False else: print("{0} : 클로킹 모드로 변경합니다.".format(self.name)) self.clocked == True def game_start(): print("[알림] 새로운 게임을 시작합니다.") def game_over(): print("Player : gg") #good game print("[Player] 님이 게임에서 퇴장하셨습니다") game_start() m1=Marine() m2=Marine() m3=Marine() t1=Tank() t2=Tank() w1=Wraith ##유닛 일괄 관리## attack_units=[] attack_units.append(m1) attack_units.append(m2) attack_units.append(m3) attack_units.append(t1) attack_units.append(t2) attack_units.append(w1) for unit in attack_units: unit.move("1시") Tank.seize_developed=True print("[알림] 탱크 시즈 모드 개발이 완료됐습니다.") ###공격 모드 준비!!### for unit in attack_units: if isinstance(unit, Marine): #이 유닛은 마린 클래스의 이스인스텐스다. unit.stimpack() elif isinstance(unit, Tank): unit.set_seize_mode() elif isinstance(unit, Wraith): unit.clocking() #마린 스팀팩, 탱크 시즈모드, 레이스 클로킹 #공격은 랜덤으로 받음 for unit in attack_units: unit.damaged(randint(5, 21)) game_over()
-
해결됨파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
for문에서 house.show_detail()을 넣어주는 이유를 모르겠습니다.
안녕하세요, 선생님 질문이 있습니다. for house in houses: 까지는 리스트에 house들을 명시하는 것이라고 생각해서 이해가 되는데 house.show_detail()을 넣어주는 이유를 모르겠습니다. class House: def __init__(self, location, house_type, deal_type, price, completion_year): self.location=location self.house_type=house_type self.deal_type=deal_type self.price=price self.completion_year=completion_year def show_detail(self): print(self.location, self.house_type, self.deal_type, self.price, self_completion) houses=[] house1=House("강남", "아파트", "매매", "10억", "2010년") house2=House("마포", "오피스텔", "전세", "5억", "2007년") house3=House("송파", "빌라", "월세", "500/50", "2000년") houses.append(house1) houses.append(house3) houses.append(house3) print("총 {0} 대의 매울이 있습니다.".format(len(houses))) for house in houses: house.show_detail() #[?] 왜 필요한지 모르겠다
-
해결됨누구나 할 수 있는 안드로이드 앱 개발 - 1 (Kotlin)
파이어베이스에는 잘 저장 되는데 불러올때 null값이라고 나옵니다...
파이어베이스는 잘 저장 되는것 같은데 //ResultActivity.ktFirebaseDatabase.getInstance().getReference().child(intent.getStringExtra("uid").toString()) .addListenerForSingleValueEvent(object : ValueEventListener{ override fun onDataChange(snapshot: DataSnapshot) { //success val DataFromFB = snapshot.getValue(Data::class.java) findViewById<TextView>(R.id.result).setText("금연일: " + DataFromFB?.day_count +" 개수 : "+ DataFromFB?.smoking_count + " 가격 : "+DataFromFB?.money_count) } override fun onCancelled(error: DatabaseError) { //fail findViewById<TextView>(R.id.result).setText("fail") } }) 여기서 DataFromFB에서 값을 가져오지 못해서 null값으로 나오는것 같습니다. 뭐가 문제인걸까요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
MySQL의 테이블 자동 생성 시에 대해서
본 강의 내용대로, Member 클래스 @Id @GeneratedValue(strategy = GenerationType.IDENTITY)@Column(name = "MEMBER_ID")private Long id; persistence.xml <property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect"/> 로 설정하면 jpa 실행하면서 생성되는 테이블 컬럼에 'auto_increment'가 설정된 것을 확인했습니다. 그런데 Member 클래스의 @GeneratedValue 속성만 기본 값(GenerationType.AUTO)으로 설정하면 auto_increment가 설정되지 않고, 마치 GenerationType.TABLE으로 설정한 것처럼 시퀀스용(=키 생성 전용) 테이블이 별도로 생성되는 것을 확인했습니다. 제가 궁금한 것은, @GeneratedValue 전략을 설정할 때, persistence.xml의 DB 방언 설정에 따라 같이 병행해야하나요?
-
미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
스타크래프트 전반전 보고 생긴 __init__(괄호 안에 거 ) 질문
안녕하세요, 선생님 질문이 있습니다. 새로 생긴 class 경우 def __init__( ): 에서 저 괄호 안에는 어떤 것들을 제시해줘야하는지 모르겠습니다. 처음 class는 class Unit: def __init__(self, name, hp, speed): self.name=name self.hp=hp self.speed=speed print("{0} 유닛이 생성됐습니다.".format(self.name)) 저렇게 처음에 def__init__():의 괄호 안에 어떤 값을 넣어야 할지 알겠습니다. 그리고 상속받은 class 또한 #공격하는 비행기 class FlyableAttackUnit(AttackUnit, Flyable): def __init__(self, name, hp, damage, flying_speed): AttackUnit.__init__(self, name, hp, 0, damage) Flyable.__init__(self, flying_speed) def move(self, location): print("[공중 유닛 이동]") self.fly(self.name, location) 부모 class의 def__init__():에서의 괄호 안의 값을 넣어야 하는 것도 이해됩니다. 그런데 상속받지 않은 새로운 class 경우 #비행기 class Flyable: def __init__(self, flying_speed): ##[?] def __init__(안에 뭐가 들어가야하는지) self.fly=flying_speed def fly(self, name, location): print("{0} : {1} 방향으로 날아갑니다. [속도 {2}]"\ .format(name, location, self.flying_speed)) 는 잘 모르겠습니다.
-
미해결실습 UI 개발로 배워보는 순수 javascript 와 VueJS 개발
너무 어렵네요...ㅜ.ㅜ
제 수준엔 너무 어려워서 혹시나 이 JS가 어떻게 해야 View.js랑 FormView의 랑 컨트롤러들을 잘 이해할 수가 있을까요..소프트웨어 컴공을 3년 다녔고 JS보단 백엔드로 JAVA로만 하다가 Js를 다시 공부하자고 맘 먹어서 처음부터 좀 JS를 들고 스코프나 재귀함수나 등등 어느정도는 알아도 좀 어렵네요 ㅜ.ㅜ 어떤 강의나 또는 어떤 방식을 해야 이 강의가 좀 더 쉽게 다가올까요?...
-
미해결빠르게 git - 핵심만 골라 배우는 Git/Github
좋은 강의 감사드립니다.
제목이 곧 내용
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
선생님 레퍼런스 질문이 있습니다.
스프링 입문자입니다. 선생님 강의를 보면서 이론적인면도 참조하면서 보고싶은데 혹시 추천해주실 수 있는 교재가 있을까요? 너무 예제만 들어있는 것들 말고 혹시 부족한 부분을 이론으로 익히려고 하는데 선생님 노하우에서 어떤 레퍼런스교재로 어떤 교재가 좋을지 추천해주시면 감사하겠습니다
-
미해결실전 프로젝트로 배우는 타입스크립트
partial vs optional
partial로 타입 정의와 인터페이스 프로퍼티를 옵셔널로 처리하는거랑 어떤점이 차이가 있을까요?그리고 어떤 상황에 뭘 쓰는게 적당??한지 궁금합니다
-
미해결하울의 안드로이드 인스타그램 클론 만들기
유저가 없으면 구글 로그인이 안되는 부분
강의와 같이 users정보를 삭제하고 실행을 후 구글 로그인을 누르면 앱이 종료가 되고 실행 후 아이디 비번을 입력하고 signup을 누르고 하면 로그인이 됩니다,, 혹시 이게 맞는건가요?
-
해결됨더 자바, 코드를 조작하는 다양한 방법
저 궁금한게 있습니다.
강의 중에"Extension 클래스 로더"라 하지 않고,이제는 "Platform 클래스 로더"로 한다고 언급하셨는데,그러면 강의 자료에Extension이 작성되있는 것이아닌,Platform으로 작성되있어야 하는거 아닌가요? 강의 듣는데는 문제는 없지만, 어쩌면 오해의 소지가 있을 수 있어서 질문드립니다.
-
해결됨윤재성의 Java 기반 Android 9.0(pie) App 개발 기본 1단계
안녕하세요, 안드11이 나오면서 ViewPager가 팔레트에서 사라져서 문의 드립니다
안드로이드 스튜디오가 안드로이드11을 지원하기 위해 업그레이드 되면서 ViewPager가 아예 없어졌는지 팔레트에 키워드 검색으로도 나오지 않더라구요 그래서 ViewPager2를 사용해보려고 했는데 Fragment가 발목을 잡아서 문의 드립니다. 혹시 이 챕터(ViewPager)는 심화 2단계의 Fragment 부분 강의를 들은 후에 수강하더라도 차후(안드로이드 메뉴 파트, 메시징 파트) 진행 중에 무리가 없을까요? 쉽고 이해가 잘 되는 강의 언제나 감사합니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
postman을 통해 다른 사이트의 entity의 전체의 내용을 출력할 수 있나요?
안녕하세요. 약간 수업 외 질문 같긴 하지만 질문 해도 될까요? 만약 어떤 사이트에서 검색기능을 구현했는데, DTO 없이 entity를 자체를 통해 출력하도록 설계를 했다면, 해당 설계된 웹 페이지에는 비밀번호 출력 기능이 구현되지 않더라도, postman 을 통해 json 방식으로 엔티티의 모든 데이타를 수집해서 비밀번호까지 알 수 있는 건가요? 뭔가 보안 상 문제가 있을 수 있겠다는 걱정이 듭니다 ㄷㄷ. 포스트맨이 엔티티 전체를 가져오는 막강한 기능을 보니까, 한계가 어디까지인지 궁금합니다! 감사합니다~
-
해결됨데브옵스(DevOps)를 위한 쿠버네티스 마스터
안녕하세요. 강사님
안녕하세요. 강사님 제가 강의를 듣고 개인적으로 내용을 정리하려 하는데 혹시 정리한 내용을 블로그에 포스팅해도 괜찮은지 여쭤보고 싶어 질문을 올립니다. 좋은 강의 제공해주셔서 너무 감사합니다.
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
질문있습니다..!
이 코드는 왜 틀린지 궁금합니다 a=ch[i]-ch[i+1]값의 절댓값 tmp=ch배열에 있는 입력값의 서로 인접해 있는 두 수의 차의 합 sum=결과가 yse일지 no일지의 기준 으로 잡고 문제를 풀었습니다 #include <stdio.h> int main() { int n,i,tmp=0,sum=0,cnt=0,a,ch[101]; scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&ch); } for(i=0;i<n-1;i++){ if(ch[i]-ch[i+1]>0) a=ch[i]-ch[i+1]; else if(ch[i]-ch[i+1]<0) a=-(ch[i]-ch[i+1]); tmp=tmp+a; for(i=0;i<n;i++){ cnt++; sum=sum+cnt; } if(tmp==sum) printf("yes"); else printf("no"); return 0; }
-
미해결우디의 프리미어 프로 강좌
한글 입력 에러 관련 질문드립니다.
제가 맥북을 사용중인데 텍스트를 클릭하고 한글로 입력하려고 하면 맥북 화면 밑에 무슨 흰색 입력창이 하나 더 뜹니다. 그래서 한글 입력이 늦게 반영이 되는데 혹시 어떤 문제 인지 아시나요? 감사합니다!
-
해결됨홍정모의 따라하며 배우는 C언어
while문 indent 질문입니다
while문을 사용할 때 while(expression) statement 이런식으로 while(expression){ expression } 이렇게 중괄호 없이 사용해도 되는건가요??
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
질문있습니다
post폴더의 [id].js입니다 const { id } = router.query; id가 넘어온것을 getServersidProps에서 context.store.dispatch({ type: LOAD_POST_REQUEST, data: context.params.id, }); 이렇게 context.params.id로 받아오셨잖아요? 그런데 궁금한것이 getServersideProps를 사용하지 않고 useEffect를 사용하여 위의 dispatch를 사용하려 할때에 data값을 어떻게 주어야 하는지 궁금합니다. useEffect(() => { dispatch({ type: LOAD_POST_REQUEST, data: params.id }) }, []); 이렇게 data에 params.id를 주었는데 안되더라구요 저럴때 어떻게 값을 넣어주어야 할까요?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
진도 관련 상담
안녕하세요, 파이썬 기초 지식만을 가지고 선생님의 강의를 1강 부터 듣기 시작한 학생입니다 제가 2차 리스트 사용하는 구간들부터 문제를 1시간 이상 보고있어도 문제를 해결할 방법을 고안하지 못하고 선생님의 강의를 보며 코드를 옮겨쓰고 이해하는 과정을 거치고 있습니다. 이러한 저의 수준에서는 지금처럼 선생님의 풀이를 단순히 보고 옮겨 쓰고 이해하는 과정 + 복습 만 해도 실력이 향상할 수 있을까요? 어떤 점을 보완해야 2차 리스트 문제들을 순조롭게 풀 수 있을지 궁금해 문의드립니다 ㅠㅠ 늘 좋은 강의 감사드려요 ^^
-
미해결홍정모의 따라하며 배우는 C++
cin.clear() 와 cin.ignore 의 질문
cin.clear(); 와 cin.ignore()의 역활이 뭔가요? 그리고 왜 선생님께선 같이 쓰신건가요?