무료
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
TypeError: 'bool' object is not callable 오류
코드 진행 중에 오류가 떴습니다. 강의를 보면서 따라했는데 뜨는 이유를 잘 모르겠습니다. 메소드와 변수의 이름이 같을 때 나타난다고 하는데, 잘 모르겠습니다.
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
syntax error
안녕하세요, 코드를 실행시키다 오류가 떠서 질문드립니다. 애완동물을 소개하는 코드 부분에서, 메뉴의 Run에 들어가서 start debugging(f5키)을 통해 코드를 실행시키면 오류없이 잘 되는데, 초록색 삼각형을 눌러 실행시키면 syntax error가 뜨면서 실행이 안되네요..코드 자체는 문제가 없는듯 한데, 왜 초록색 삼각형을 눌러 실행시키면 오류가 뜨는 것일까요?
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
변수에 대한 몇가지 질문입니다
1. ,변수,를 사용하면 좌,우로 띄어쓰기가 발생하는데 이 띄어쓰기를 없애는 방법이 있나요? 2. str(is_adult)에서 True가 출력된 이유가 궁금합니다.
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
용어 질문입니다!
변수들을 초기화한다고 하시는데 초기화라는게 정확히 무슨 뜻인지 궁금합니다.
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
return값에 commission 쓰는 경우요
# 1. def withdraw_night(balance,money): #저녁에 출금 commission = 100 # 수수료 100원 if balance >= money+commission: print("출금이 완료되었습니다. 잔액은 {0}원입니다.".format(balance-commission-money)) return commission, balance - money - commission else: print("출금이 완료되지 않았습니다. 잔액은 {0}원입니다.".format(balance)) return balance if문 return값에는 commission이 꼭 들어가야하고, else문은 안들어가던데 이유가 뭔가요 if 조건식에 commission이 들어가서인가요? (money + commission) # 2. balance = 0 # 잔액 balance = deposit(balance,1000) commission, balance = withdraw_night(balance,500) print("수수료 {0} 원이며, 잔액은 {1} 원입니다.".format(commission,balance)) 밑에 commission, balance = withdraw_night(balance,500) 에서 commission이 들어가는 이유가 뭔가요? 함수 def withdraw_night 에 commission 있는데 쓰는 이유를 모르겠어요 ㅠㅠ fomat에 들어간 commission 때문인가요?! withdraw_night 함수에서 commission 100 을 가져올거라서 인가요? 강의 잘 듣고 있습니다 감사여!!
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
오류
#공격 유닛 class Attackunit: def __init__(self, name, hp, damage): self.name = name self.hp=hp self.damage=damage def attack(self, location): print("{0} : {1} 방향으로 적군을 공격합니다. [공격력: {2}]".format(self.name,location,self.damage)) 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)) #파이어뱃 :공격 유닛, 화염방사기. firebat1 = Attackunit("파이어뱃", 50, 16) firebat1.attack("5시") #공격 2번 받는다고 가정 firebat1 = damaged(25) firebat1 = damaged(25) !되어 있는 줄에 계속 오류가 뜨는데 이유를 모르겠습니다. 설명 부탁드립니다.
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
오류ㅠㅠ
전강의 보고 왜 안되지? ;; 하고 이강의 보고 또 다시할려는데 또 안돼요 ㅠㅠ
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
while문 안에 try
답에서는 while문 안에 try구문을 썼는데 혹시 while 문 밖에 try를 써도 괜찮나요?
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
문법 오류라고 뜨는데... 뭐가 잘못됐는지 가르쳐주실 수 있나요ㅜㅜ
url="http://naver.com" my_str=url.replace("http://","") print(my_str) my_str= my_str[:my_str.index(".")] # print(my_str) password = my_str[:3] + str(len(my_str) + str(my_str.count("e") +"!" print("{0} 의 비밀번호는 {1} 입니다.".format(url,password))
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
저는 이렇게 풀었습니다.
먼저 이렇게 좋은 강좌를 그냥 오픈해주신 강사님께 경의를 표합니다 저는 강사님과는 조금 다른 형식으로 풀었습니다. 결과는 같게 작동하네요. 저는 원래 기계공학도이고 3D설계를 십수년간 했었는데 지엠에서 희망퇴직 후에 자율주행차를 개발하고자 해서 프로그래밍을 공부하는 늦깍이 입니다. 유다시티에서 self driving car nano degree를 전공중이에요 2차과제 영상입니다 (https://www.youtube.com/watch?v=MvOtWoGfHXs) for i in range(1,51): for x in range(1,51): file_name = (str(x)+"주차 보고서.txt") report_file = open(file_name, "w", encoding="utf-8") print(str(x)+"주차 보고서:", file=report_file) print("부서:", file=report_file) print("이름:", file=report_file) print("업무요약:", file=report_file)
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
실행 오류
# 손님을 부르고 주문한 손님이 맞는지 확인(조건에 만족하는 손님이 나올 때까지 무한 반복) customer = "토르" person = "unknown" while person != customer: print("{0}님, 커피가 준비되었습니다. ".format(customer)) person = input("이름이 어떻게 되세요? ") if person == "토르": print("맛있게 드세요!") else: print("토르 님이 아닙니다.") 아래 게시글을 읽고 궁금해서 저 또한 작성해봤는데 else: 문장에 대해 오류가 자꾸 뜹니다. 왜 이러는 건지 알려주실 수 있나요?
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
저는 이렇게 코딩했습니다(입력받기 및 정상체중과 자신의 체중비교)
잘 작동하는 코드입니다. 참조하시라고 복붙합니다. 기계설계 출신으로서 자율주행에 도전하느라고 고생하는 중이에요. 그래도 공부할 수 있어서 행복합니다. 참고로 저는 CATIA (3차원 설계) 강의올렸네요. 밑에 링크 첨부합니다. (https://www.youtube.com/channel/UCr0NXFTiyT2ccef8A1bKp4g/playlists) man_std_weight = 0woman_std_weight = 0height = 0gender =''def std_weight(height,gender,current_weight): if gender == '남자': man_std_weight = round((height * height * 22) / (10000),2) print('키{0}cm의 남자 표준 체중은 {1}kg 입니다'.format(height,man_std_weight)) dignose = round((current_weight - man_std_weight),2) print(float(input('당신(남자)은 현재{0} 만큼 과체중 입니다.:'.format(dignose)))) else: #gender == '여자': woman_std_weight = round((height * height * 21)/(10000),2) print('키{0}cm의 여자의 표준 체중은 {1}kg 입니다'.format(height, woman_std_weight)) dignose1 = round((current_weight - woman_std_weight),2) print(float(input('당신(여자)은 현재{0} 만큼 과체중 입니다.:'.format(dignose1)))) returnstd_weight((float(input('키입력:'))),(str(input('성별은?:' ))),(float(input('당신의 체중입력:'))))
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
만약에 파이썬 창에 install launcher for all users가 안 눌러지면 어떡하나요?
안녕하세요, 선생님 질문있습니다 파이썬 창에 install launcher for all users가 안 눌러지면 어떡하나요? 그래서인지 파이썬을 설치해도 비주얼 코드에 python창에 istall도 안 뜨고요... ㅠㅠ python이 없다는 창만 뜨네요...
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
경험담인거같아요
마지막에 입력값은 무조건 문자열로 받는다 이거 숫자로 받지 못해서 오류난 경험이 있으신 것 같네요 ㅋㅋ 이런게 경험에서 나오는 노하우인듯 감사합니다
- 해결됨파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
처음부터 치킨 11마리 시키면 재고가 부족합니다로 안 뜨는 이유...질문 있습니당
안녕하세요, 선생님 질문이 있습니다. 작동은 잘되는데 처음부터 치킨 11마리를 시키면 바로 '재고가 부족합니다.'가 안끄는 이유를 모르겠습니다. if order > chicken: print('재료가 부족합니다.') [코딩] class SoldOutError (Exception): pass #pass chicken=10 waiting=1 while(True): try: #try 넣어줘야 함 print('[남은 치킨 : {0}]'.format(chicken)) order=int(input('치킨 몇 마리를 주문하시겠습니까? : ')) if order > chicken: print('재료가 부족합니다.') elif order < 1: #elif raise ValueError if chicken == 0: raise SoldOutError else: print('[대기번호 {0}] {1}마리 주문 완료됐습니다.'.format(waiting, order)) waiting += 1 chicken -= order except ValueError: #try랑 같은 열 print('잘못된 값을 입력하였습니다.') except SoldOutError: # print('재고가 소진돼 더 이상 주문을 받지 않습니다.') break #break
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
제가 이렇게 만들어 봤는데 살짝 맘에 안드는게 있어서여...
제가 계좌에 들어있는 돈 보다 출금할 돈이 많으면 이렇게 input을 활용해 다시 한번 질문을 하게 만들고 y를 ㄴ르면 계좌에 있느논이 -로 표시될려고 하는데.... 다른건 다 괜찮은데 끝나고 나서 account함수를 열어 봤더니 None원 이라고 합니다 왜이러는 거죠? 코드 --> def account(balance): print("현재 계좌에 들어 있는 돈은 {0} 원입니다.".format(balance)) return balance def deposit(balance, money): # 입금 print("입금이 완료되었습니다. 현재 계좌에 들어 있는 돈은 {0} 원입니다.".format(balance + money)) return balance + money yes = "y" no = "n" def withdraw(balance, money): # 출금 if balance >= money: print("출금이 완료되었습니다. 현재 계좌에 들어 있는 돈은 {0} 원입니다.".format(balance - money)) return balance - money elif balance <= money: withdraw_license = input("현재 계좌에 들어 있는 돈이 출금할 돈보다 적습니다. 출금 하시겠습니까? (y or n)") if withdraw_license != no: print("출금이 완료되었습니다.") elif withdraw_license != yes: print("출금이 취소되었습니다.") return balance balance = 0 balance = deposit(balance, 1000) balance = withdraw(balance, 2000) account(balance)
- 미해결파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자
굳이 왜
따로 format 이라든가 % 라든가.. 이런것들을 써주나요? 그냥 프린트문안에 다 때려박으면 안되나요?
- 미해결파이썬 무료 강의 (기본편) - 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() #[?] 왜 필요한지 모르겠다
- 미해결파이썬 무료 강의 (기본편) - 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)) 는 잘 모르겠습니다.