1、hello world程序html
一、 在linux 下建立一个文件叫hello.py,并输入 python
print("Hello World!")
而后执行命令:python hello.py ,输出linux
localhost:~ jieli$ vim hello.py
localhost:~ jieli$ python hello.py
Hello World!
二、由 python 解释器来执行vim
#!/usr/bin/env python print "hello,world"
执行: ./hello.py
便可。数组
ps:执行前需给予 hello.py 执行权限,chmod 755 hello.pyoop
三、直接调用python自带的交互器运行代码优化
localhost:~ jieli$ python Python 2.7.10 (default, Oct 23 2015, 18:05:06) [GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> print("Hello World!") Hello World!
2、变量编码
一、spa
#_*_coding:utf-8_*_ name = "tony"
变量名为: name,变量name的值为:"tony"翻译
二、变量定义的规则:
3、字符编码
python通常用 utf-8
#!/usr/bin/env python # -*- coding: utf-8 -*- print "你好,世界"
4、用户输入
#!/usr/bin/env python #_*_coding:utf-8_*_ #name = raw_input("What is your name?") #only on python 2.x name = input("What is your name?") print("Hello " + name )
输入密码时,若是想要不可见,须要利用getpass 模块中的 getpass方法,即:
#!/usr/bin/env python # -*- coding: utf-8 -*- import getpass # 将用户输入的内容赋值给 name 变量 pwd = getpass.getpass("请输入密码:") # 打印输入的内容 print(pwd)
#input()后默认输入字符类型,如需输入数字,须要整数转换int()
5、模块初识
Python的强大之处在于他有很是丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持
例子1 sys
#!/usr/bin/env python # -*- coding: utf-8 -*- import sys print(sys.argv) #输出 $ python test.py helo world ['test.py', 'helo', 'world'] #把执行脚本时传递的参数获取到了
例子2 os
#!/usr/bin/env python # -*- coding: utf-8 -*- import os os.system("df -h") #调用系统命令
结合
import os,sys os.system(''.join(sys.argv[1:])) #把用户的输入的参数看成一条命令交给os.system来执行
并且,本身写的xx.py模块只能在当前目录下导入,若是想在系统的任何一个地方都使用怎么办呢? 此时你就要把这个xx.py放到python全局环境变量目录里啦,基本通常都放在一个叫 Python/2.7/site-packages 目录下,这个目录在不一样的OS里放的位置不同,用 print(sys.path) 能够查看python环境变量列表。
6、pyc是什么?
1. 解释型语言和编译型语言
计算机是不可以识别高级语言的,因此当咱们运行一个高级语言程序的时候,就须要一个“翻译机”来从事把高级语言转变成计算机能读懂的机器语言的过程。这个过程分红两类,第一种是编译,第二种是解释。
编译型语言在程序执行以前,先会经过编译器对程序执行一个编译的过程,把程序转变成机器语言。运行时就不须要翻译,而直接执行就能够了。最典型的例子就是C语言。
解释型语言就没有这个编译的过程,而是在程序运行的时候,经过解释器对程序逐行做出解释,而后直接运行,最典型的例子是Ruby。
经过以上的例子,咱们能够来总结一下解释型语言和编译型语言的优缺点,由于编译型语言在程序运行以前就已经对程序作出了“翻译”,因此在运行时就少掉了“翻译”的过程,因此效率比较高。可是咱们也不能一律而论,一些解释型语言也能够经过解释器的优化来在对程序作出翻译时对整个程序作出优化,从而在效率上超过编译型语言。
此外,随着Java等基于虚拟机的语言的兴起,咱们又不能把语言纯粹地分红解释型和编译型这两种。
用Java来举例,Java首先是经过编译器编译成字节码文件,而后在运行时经过解释器给解释成机器文件。因此咱们说Java是一种先编译后解释的语言。
2.python的运行过程
python解释器的两次运行:
当python程序运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。
当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,若是找到,则直接载入,不然就重复上面的过程。
因此咱们应该这样来定位PyCodeObject和pyc文件,咱们说pyc文件实际上是PyCodeObject的一种持久化保存方式。
7、数据类型初识
2 是一个整数的例子。
长整数 不过是大一些的整数。
3.23和52.3E-4是浮点数的例子。E标记表示10的幂。在这里,52.3E-4表示52.3 * 10-4。
(-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4为实数,j为虚数,数学中表示复数是什么?。
int(整型)
"hello world"
name_list = ['alex', 'seven', 'eric'] 或 name_list = list(['alex', 'seven', 'eric'])
基本操做:
ages = (11, 22, 33, 44, 55)
或
ages = tuple((11, 22, 33, 44, 55))
六、字典(无序)
person = {"name": "mr.wu", 'age': 18} 或 person = dict({"name": "mr.wu", 'age': 18})
经常使用操做:
8、数据运算
算数运算:
比较运算:
赋值运算:
逻辑运算:
成员运算:
身份运算:
位运算:
运算优先级:
9、if---else
场景一:用户登陆
# 提示输入用户名和密码
# 验证用户名和密码
# 若是错误,则输出用户名或密码错误
# 若是成功,则输出 欢迎,XXX!
#!/usr/bin/env python
# -*- coding: encoding -*-
import
getpass
name
=
raw_input
(
'请输入用户名:'
)
pwd
=
getpass.getpass(
'请输入密码:'
)
if
name
=
=
"alex"
and
pwd
=
=
"cmd"
:
print
(
"欢迎,alex!"
)
else
:
print
(
"用户名和密码错误"
)
场景2、猜年龄游戏
在程序里设定好你的年龄,而后启动程序让用户猜想,用户输入后,根据他的输入提示用户输入的是否正确,若是错误,提示是猜大了仍是小了
#!/usr/bin/env python # -*- coding: utf-8 -*- my_age = 28 user_input = int(input("input your guess num:")) if user_input == my_age: print("Congratulations, you got it !") elif user_input < my_age: print("Oops,think bigger!") else: print("think smaller!")
#_*_coding:utf-8_*_ __author__ = 'Alex Li' for i in range(10): print("loop:", i )
还能够和if结合使用
for i in range(10): if i<5: continue #不往下走了,直接进入下一次loop,还能够用break结束循环loop print("loop:", i )
11、While循环
死循环
count = 0 while True: print("你是风儿我是沙,缠缠绵绵到天涯...",count) count +=1