Pathon学习笔记1

时间:2024-10-18 13:34:14

1.解释型语言和编译型语言
编译型:需要一个翻译的程序——编译器(Compiler)对源代码进行转化,变成可执行代码,称为编译(Compile)。大的复杂的程序还需要链接程序(Linker)来链接各个半成品文件和资源,例如图像、声音等。一次性把所有代码转换成机器语言,编译效率高,但是每次测试需要全部编译,而且不同平台之间一般无法直接移植。

解释型:每执行一条指令,就有解释程序把源代码转换成二进制代码执行,不断地解释、执行、解释执行。编译前需要加载编译环境,然后再加载源代码,不同平台只要有编译环境,可以直接移植,但编译效率较低,有时候相差几百倍的效率也不足为奇。所以大型的底层系统一般用C,C++等编译型语言来写,但是对性能要求没那么高的网页脚本,服务器以及辅助开发接口这样对速度要求不高的,且需要一定兼容性的,则用解释型语言来写。

2.动态语言和静态语言
动态语言:是指在运行期间才去做数据类型检查的语言,编程时,不需要给任何变量指定数据。
静态语言:是指在写程序时就要指定所有变量的数据类型。

3.强类型定义语言和弱类型定义语言
强类型定义语言:一个变量被赋值之后,不进行强制转换就不能更改数据类型。
弱类型:一个变量可以赋值不同数据类型的值。运行速度上有优势,但不够严谨,容易带来错误。

4.Pathon是个动态解释性的强类型定义语言。Java是个静态编译型的强类型定义语言。

5.Python解释器
PYPY 速度很快,动态编辑,是未来

6.只要是变成可执行程序,代码第一行
#!/usr/bin/env python

7. # -*- coding:utf-8 -*-

8.单行注释用#, 多行注释用'''三个单引号或三个双引号

练习代码1

name = input("what is your name?")
age = int (input("How old are you?"))
print(type(age),type(str(age)))
job = input("What is your job?") info = '''--- info of %s ---
name:%s
age:%s
job:%s
''' %(name,name,age,job) print(info) info2 = '''--- info of {_name} ---
name:{_name}
age:{_age}
job:{_job}
''' .format(_name=name,
_age=age,
_job=job) print(info2)

练习代码2

if else

age = 56
guess_age = int(input ("guess age:")) if guess_age == age:
  print("you got it!")
elif guess_age > age:
  print("think biger")
else:
  print("think smaller!")

while循环:

age = 56
count = 0 while count<3:
  guess_age = int(input("guess age:"))
  if age == guess_age:
    print("you are right!")
  break   elif guess_age > age:
    print("think biger")   else:
    print("think smaller!")
    count +=1
  else:
  print("you guess to many times...")

while循环(优化):

age = 56
count = 0 while count<3:
  guess_age = int(input("guess age:"))
  if age == guess_age:
    print("you are right!")
  break   elif guess_age > age:
    print("think biger")   else:
    print("think smaller!")
    count +=1
  if count == 3:
    guess_comfirm = input("do you want to keep guessing...")
  if guess_comfirm != 'n':
    count = 0
  else:
    print("you guess to many times...")

For循环
for count in range(0,10,1):

continue是跳出本次循环,进入下次循环,break是停止当前循环

练习代码3

 # -*- coding:utf-8 -*-
# Author: Fan Chen
import time user_R = "frank"
password_R = ""
count = 0 while count<3:
username = input("Please input your username:")
password = input("please input your password:")
if username == user_R and password == password_R:
print('Login ...')
time.sleep(2)
print('Welcome to go home,',username)
break
elif count < 2:
print('Username or Password is wrong, please try again...')
count += 1
else:
count += 1 if count == 3:
lock_name = user_R
if username == lock_name:
print('Your Account is locked...Please contact Admin')
else:
print('You have tried too many times...')