Python 기초 튜 토리 얼,Python 입문 튜 토리 얼(초 상세)
만약 에 우리 가 이런 임 무 를 가지 고 있다 고 가정 하면 랜 에 있 는 컴퓨터 가 연결 되 는 지 간단하게 테스트 합 니 다.이 컴퓨터 들 의 ip 범 위 는 192.168.0.101 에서 192.168.0.200 까지 입 니 다.
사고방식:셸 로 프로 그래 밍 합 니 다.
구현:자바 코드 는 다음 과 같 습 니 다.
String cmd="cmd.exe ping ";
String ipprefix="192.168.10."; int begin=101; int end=200;
Process p=null; for(int i=begin;i<end;i++){
p= Runtime.getRuntime().exec(cmd+i);
String line = null;
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
while((line = reader.readLine()) != null)
{
//Handling line , may logs it. }
reader.close();
p.destroy();
}
이 코드 가 잘 작 동 되 고 있 습 니 다.문 제 는 이 코드 를 실행 하기 위해 서 입 니 다.추가 작업 이 필요 합 니 다.이 추가 작업 은 다음 과 같 습 니 다.클래스 파일 을 작성 합 니 다.
main 방법 을 작성 합 니 다.
4.567917.바이트 코드 로 컴 파일 합 니 다.4.567918.
같은 작업 은 Python 으로 다음 과 같이 이 루어 집 니 다.
import subprocess
cmd="cmd.exe" begin=101 end=200 while begin<end:
p=subprocess.Popen(cmd,shell=True,stdout=subprocess.PIPE,
stdin=subprocess.PIPE,
stderr=subprocess.PIPE)
p.stdin.write("ping 192.168.1."+str(begin)+"
")
p.stdin.close()
p.wait()
print "execution result: %s"%p.stdout.read()
자바 에 비해 Python 의 실현 은 더욱 간결 합 니 다.작성 하 는 시간 이 더 빠 릅 니 다.main 함 수 를 쓸 필요 가 없 으 며,이 프로그램 을 저장 한 후에 바로 실행 할 수 있 습 니 다.또한 자바 와 마찬가지 로 Python 도 크로스 플랫폼 입 니 다.경험 이 있 는 C/자바 프로그래머 는 C/자바 로 쓰 는 것 이 Python 보다 빠르다 고 논쟁 할 수 있 습 니 다.이 관점 은 인 견 이 있 습 니 다.제 생각 은 자바 와 Python 을 동시에 파악 한 후에...Python 으로 이러한 프로그램 을 쓰 는 속도 가 자바 보다 훨씬 빠 를 것 이라는 것 을 알 게 될 것 입 니 다.예 를 들 어 로 컬 파일 을 조작 할 때 자바 의 많은 스 트림 포장 류 가 필요 하지 않 고 한 줄 의 코드 만 필요 합 니 다.각종 언어 는 자 연 스 럽 게 적합 한 응용 범위 가 있 습 니 다.Python 으로 간단 한 프로그램 을 처리 하 는 것 이 운영 체제 와 유사 한 인 터 랙 션 프로 그래 밍 작업 을 하 는 것 이 가장 편리 합 니 다.
Python 응용 장소
간단 한 임무,예 를 들 어 셸 프로 그래 밍 등 이 있 습 니 다.만약 파 이 썬 으로 대형 상업 사 이 트 를 설계 하거나 복잡 한 게임 을 디자인 하 는 것 을 좋아한다 면 마음대로 하 세 요.
Hello world
Python 을 설치 한 후(내 컴퓨터 버 전 은 2.5.4)IDLE(Python GUI)를 엽 니 다.이 프로그램 은 Python 언어 해석 기 입 니 다.당신 이 쓴 문 구 는 즉시 실 행 될 수 있 습 니 다.우 리 는 다음 유명한 프로그램 문 구 를 씁 니 다.
print "Hello,world!"
돌아 오 는 차 를 누 르 면 K&R 에 의 해 프로그램 세계 로 도입 되 었 다 는 명언 을 볼 수 있다.해석 기 에서"File"C"New Window"또는 단축 키 Ctrl+N 을 선택 하고 새로운 편집 기 를 엽 니 다.다음 문 구 를 쓰 십시오.
print "Hello,world!"
raw_input("Press enter key to close this window! ");
a.py 파일 로 저장 합 니 다.F5 를 누 르 면 프로그램의 실행 결 과 를 볼 수 있 습 니 다.이것 은 Python 의 두 번 째 실행 방식 입 니 다.저 장 된 a.py 파일 을 찾 아 두 번 누 르 십시오.프로그램 결 과 를 볼 수 있 습 니 다.Python 프로그램 이 직접 실행 되 고 자바 와 비교 할 수 있 는 것 이 장점 입 니 다.
국제 화 지원
우 리 는 다른 방식 으로 세계 에 안 부 를 묻 습 니 다.편집 기 를 새로 만 들 고 다음 코드 를 쓰 십시오.
print " !"
raw_input("Press enter key to close this window!");
코드 를 저장 할 때 Python 은 파일 의 문자 집합 을 바 꿀 지 여 부 를 알려 줍 니 다.결 과 는 다음 과 같 습 니 다.
# -*- coding: cp936 -*-
print " !"
raw_input("Press enter key to close this window! ");
이 문자 집합 을 우리 가 더 잘 아 는 형식 으로 바 꿉 니 다.
# -*- coding: GBK -*-
print " !" #
raw_input("Press enter key to close this window");
프로그램 처럼 잘 작 동 합 니 다.사용 하기 쉬 운 계산기
마이크로소프트 에 첨부 된 계산기 로 계산 하 는 것 은 정말 번거롭다.Python 해석 기 를 켜 서 직접 계산 하 자.
a=100.0
b=201.1
c=2343
print (a+b+c)/c
문자열,ASCII,UNICODE출력 형식 을 미리 정의 하 는 문자열 을 다음 과 같이 출력 할 수 있 습 니 다.
print """ Usage: thingy [OPTIONS]
-h Display this usage message
-H hostname Hostname to connect to """
문자열 은 어떻게 접근 합 니까?이 예 를 보십시오.
word="abcdefg" a=word[2]
print "a is: "+a
b=word[1:3]
print "b is: "+b # index 1 and 2 elements of word.
c=word[:2]
print "c is: "+c # index 0 and 1 elements of word.
d=word[0:]
print "d is: "+d # All elements of word.
e=word[:2]+word[2:]
print "e is: "+e # All elements of word.
f=word[-1]
print "f is: "+f # The last elements of word.
g=word[-4:-2]
print "g is: "+g # index 3 and 4 elements of word.
h=word[-2:]
print "h is: "+h # The last two elements.
i=word[:-2]
print "i is: "+i # Everything except the last two characters
l=len(word)
print "Length of word is: "+ str(l)
ASCII 와 UNICODE 문자열 의 차이 점 을 주의 하 십시오:
print "Input your Chinese name:" s=raw_input("Press enter to be continued ");
print "Your name is : " +s;
l=len(s)
print "Length of your Chinese name in asc codes is:"+str(l);
a=unicode(s,"GBK")
l=len(a)
print "I'm sorry we should use unicode char!Characters number of your Chinese \ name in unicode is:"+str(l);
사용 목록자바 의 List 와 유사 합 니 다.이것 은 편리 하고 사용 하기 쉬 운 데이터 형식 입 니 다.
word=['a','b','c','d','e','f','g']
a=word[2]
print "a is: "+a
b=word[1:3]
print "b is: " print b # index1 and 2 elements of word.
c=word[:2]
print "c is: " print c # index0 and 1 elements of word.
d=word[0:]
print "d is: " print d # All elements of word.
e=word[:2]+word[2:]
print "e is: " print e # All elements of word.
f=word[-1]
print "f is: " print f # The last elements of word.
g=word[-4:-2]
print "g is: " print g # index3 and 4 elements of word.
h=word[-2:]
print "h is: " print h # The last two elements.
i=word[:-2]
print "i is: " print i # Everything except the last two characters
l=len(word)
print "Length of word is: "+ str(l)
print "Adds new element[ ...(image-b4ced-1616074265420-0)] " word.append('h')
print word
조건 과 순환 문
# Multi-way decision
x=int(raw_input("Please enter an integer:")) if x<0:
x=0 print"Negative changed to zero" elif x==0:
print "Zero" else:
print "More" # Loops List
a= ['cat', 'window', 'defenestrate'] for x ina:
print x, len(x)
함 수 를 어떻게 정의 합 니까?
# Define and invoke function.
def sum(a,b):
return a+b
func = sum
r = func(5,6)
print r
# Defines function with default argument
def add(a,b=2):
return a+b
r=add(1)
print r
r=add(1,5)
print r
그리고 사용 하기 편리 한 함 수 를 소개 합 니 다.
# The range() function
a =range(5,10)
print a
a = range(-2,-7)
print a
a = range(-7,-2)
print a
a = range(-2,-11,-3) # The 3rd parameter stands for step
print a
파일 I/O
spath="D:/download/baa.txt" f=open(spath,"w") # Opens file for writing.Creates this file doesn't exist. f.write("First line 1.
")
f.writelines("First line 2.")
f.close()
f=open(spath,"r") # Opens file forreading for line in f:
print line
f.close()
예외 처리
s=raw_input("Input your age:") if s =="":
raise Exception("Input must no be empty.") try:
i=int(s)
except ValueError:
print "Could not convert data to an integer." except:
print"Unknown exception!" else: # It is useful for code that must be executed if the try clause does not raise an exception
print "You are %d" % i," years old" finally: # Clean up action
print "Goodbye!"
상속
class Base:
def __init__(self):
self.data =[]
def add(self, x):
self.data.append(x)
def addtwice(self, x):
self.add(x)
self.add(x)
# Child extends Base class Child(Base):
def plus(self,a,b):
return a+b
oChild =Child()
oChild.add("str1")
print oChild.data
print oChild.plus(2,3)
패키지 메커니즘모든.py 파일 을 하나의 module 이 라 고 부 릅 니 다.module 간 에 서로 가 져 올 수 있 습 니 다.다음 예 를 참조 하 십시오.
# a.py
def add_func(a,b):
return a+b
# b.py
from a import add_func # Also can be : import a
print "Import add_func from module a"
print"Result of 1 plus 2 is: " print add_func(1,2) # If using "import a" , then here should be "a.add_func"
module 는 가방 안에 정의 할 수 있 습 니 다.Python 정의 가방 의 방식 이 약간 이상 합 니 다.만약 에 우리 가 parent 폴 더 가 있다 고 가정 하면 이 폴 더 는 child 하위 폴 더 가 있 습 니 다.child 에 module a.py 가 있 습 니 다.이 파일 의 계층 구 조 를 어떻게 알 수 있 습 니까?간단 합 니 다.디 렉 터 리 마다 이름 이 입 니 다.init_.py 파일 입 니 다.이 파일 의 내용 은 비어 있 습 니 다.이 계층 구 조 는 다음 과 같 습 니 다.
parent
--__init_.py
--child
-- __init_.py
--a.py
b.py
그러면 Python 은 어떻게 우리 가 정의 하 는 module 을 찾 습 니까?표준 패키지 sys 에서 path 속성 은 Python 의 패키지 경 로 를 기록 합 니 다.인쇄 할 수 있 습 니 다:
import sys
print sys.path
일반적으로 우 리 는 module 의 패키지 경 로 를 환경 변수 PYTHONPATH 에 넣 을 수 있 습 니 다.이 환경 변 수 는 sys.path 속성 에 자동 으로 추 가 됩 니 다.다른 편리 한 방법 은 프로 그래 밍 에서 우리 의 module 경 로 를 sys.path 에 직접 지정 하 는 것 입 니 다.
import sys
sys.path.append('D:\\download')
from parent.child.a import add_func
print sys.path
print "Import add_func from module a" print"Result of 1 plus 2 is: " print add_func(1,2)
총결산당신 은 이 튜 토리 얼 이 상당히 간단 하 다 는 것 을 알 게 될 것 입 니 다.많은 Python 특성 은 코드 에 포함 되 어 있 습 니 다.이러한 특성 은 Python 은 명시 적 성명 데이터 형식,키워드 설명,문자열 함수 의 해석 등 을 필요 로 하지 않 습 니 다.나 는 숙련 된 프로그래머 가 이러한 개념 에 대해 상당히 잘 알 아야 한다 고 생각 합 니 다.이렇게 하면 당신 이 귀중 한 한 시간 동안 이 짧 은 튜 토리 얼 을 읽 은 후에...기 존 지식의 이전 비 교 를 통 해 Python 을 빨리 익히 고 가능 한 한 빨리 프로 그래 밍 을 시작 할 수 있 습 니 다.
이 글 은 여기까지 입 니 다.여러분 께 도움 을 드 리 고 저희 의 더 많은 내용 에 관심 을 가 져 주 셨 으 면 좋 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.