1 Python介绍

2 Python发展史

3 Python2 or 3?

4 Python安装

就不写了,各路大牛的博客都很详细。

5 Hello World程序

 #!/usr/bin/env python

 print "hello,world"

6 变量、字符编码

声明变量

 #_*_coding:utf-8_*_

 name  = "Leon"

声明了一个变量,变量名为name,变量name的值为“Leon”

变量定义的规则:

  • 变量名只能是字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名

  ['and', 'as', 'assert', 'break', 'class', 'continue', 'def','del', 'elif','else','except','exec','finally','for','form',

  'global','if','import','in','is','lambda','not','or','pass','print','raise','return','try','while','with','yield']

7 字符编码

Python解释器在加载.py文件中的代码时,会对内容进行编码(默认ASCII),其最多只能用8位来表示(一个字节),即:2**8 = 256-1,所以ASCII码最多只能表示255个符号。

关于中文

GB2312---->GBK1.0---->GB18030

所以,需要一种可以代表所有字符和符号的编码,即:Unicode

UTF-8,是对Unicode编码的压缩和优化,ASCII码中的内容用1个字节保存、欧洲的字符用2个字节保存、东亚字符用3个字节保存。

所以,Python解释器在加载.py文件中的代码时,会对内容进行编码(默认ASCII),如果是如下代码的话:

报错:ascii码无法表示中文

 #!/usr/bin/env python

 print "你好,世界"

改正:应该显示的告诉Python解释器,用什么编码来执行源代码,即:

 #!/usr/bin/env python
 # _*_ coding: utf-8 _*_

 print "你好,世界"

注释

当行注释:#被注释内容

多行注释:“”“被注释内容”“”

8 用户输入

 #!/usr/bin/env python
 #_*_coding:utf-8_*_

 #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)

9 模块初识

几乎任何功能都有相应的Python库支持,2个简单的。

sys

 #!/usr/bin/env python
 # -*- coding: utf-8 -*-

 import sys

 print(sys.argv)

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来执行

自己写模块

自己写的模块只能在当前目录下导入,如果想在系统的任何一个地方都使用,要把.py放到Python全局环境变量目录里,基本一般都放在一个叫Python/2.7/site-packages目录下。

10 pyc是啥

Python程序运行时,编译的结果保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。

当Python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。

所以我们应该这样来定位PyCodeObject和pyc文件,pyc文件其实是PyCodeObject的一种持久化保存方式。

11 数据类型初识

1、数字

int(整型)

  在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647

  在64位机器上,整数的位数为64位,取值范围为-2**63~2**63-1

long(长整形)

  Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,使用的长整数数值不可能无限大。

  2是一个整数,长整数不过是大一些的整数

float(浮点型)

  浮点数用来处理实数,即带有小数的数字。

  52.3E-4是浮点数。E表示10的幂

complex(复数)

  (-5+4j)和(2.3-4.6j)是复数

2、布尔值

  真或假

  1或0

3、字符串

“hello world”

字符串格式化输出

 name = "leon"
 print("i am %s" %name)

字符串是%s;整数%d;浮点数%f

字符串常用功能:

  • 移除空白——strip方法
  • 分割——split方法
  • 长度——len函数
  • 索引——index方法
  • 切片——:

4、列表

创建列表:

 name_list = ['alex', 'seven', 'eric']
 #或者
 name_list = list( ['alex', 'seven', 'eric'])

基本操作:

  • 索引——namelist[0],index方法
  • 切片——:
  • 追加——append方法,extend方法
  • 删除——del函数
  • 长度——len函数
  • 循环——for in
  • 包含——

5、元组(不可变列表)

 ages = (11, 22, 33, 44, 5)

6、字典

创建字典:

 person = {"name": "Mr.Wu", 'age': 18}

常用操作:

  • 索引
  • 新增
  • 删除
  • 键、值、键值对
  • 循环
  • 长度

12 数据运算

算数运算:

+ - * /

%  取模,返回除法的余数

**  幂

//  取整除,返回商的整数部分

比较运算:

==  判断等于

!=  不等于

>  <  >=  <=

赋值运算:

=

+=

-=

*=

/=

%=

**=

//=

逻辑运算:

and   与

or      或

not    非

成员运算:

in         在指定序列中找到值返回True,否则返回False

not in   在指定序列中没找到值返回True,否则返回False

身份运算:

is         判断两个标识符是不是引用自一个对象

not in   判断两个标识符是不是引用自不同对象

位运算:

&     按位与

|       按位或

^       按位异或  #相同为0,不同为1

~      按位取反

<<    左移运算

>>    右移运算.

13 表达式if...else

一、用户登录验证

 name = input("请输入用户名: ")
 pwd = input("请输入密码: ")

 if name == "Leon" and pwd == "cmd":
     print("欢迎,Leon! ")
 else:
     print("用户名和密码错误")

二、猜年龄游戏

 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!")

外层变量,可以被内层代码使用;

内层变量,不应被外层代码使用。

14 表达式 for loop

 for i in range(10):
     print("loop:", i)

遇到小于5的循环次数就不走了,直接跳入下一次循环

 for i in range(10):
     if i < 5:
         continue
     print("loop:", i)

遇到大于5的循环次数就不走了,直接退出

 for i in range(10):
     if i > 5:
         break
     print("loop:", i)

15 while loop

 count = 0
 while True:
     print("You are wind! I am sand!")
     count += 1
     if count == 100:
         print("fuck off!!!")
         break

16 其他入门知识

1、三元运算

 result = 值1 if 条件 else 值2

如果条件为真:result = 值1

如果条件为假:result = 值2

2、对于Python,一切事物皆对象,对象基于类创建

字符串、整数、列表都是对象,并且是根据不同的类生成的对象。

1st,Python基础——01的更多相关文章

  1. Python基础01

    Python基础 1.Python介绍 2.安装 3.Hello World程序 4.变量 5.用户输入 6.表达式if ...else语句 7.表达式for 循环 8.表达式while 循环 9.数 ...

  2. Python基础--01小项目体现的基础知识

    part1:猜拳游戏 #coding=utf-8 #当有汉语时可能编译器不认识,需要定义代码 ''' 多行注释 写这个程序是为了熟悉python的基本语法 这是第一个小例子包含简单的if判断,循环和输 ...

  3. python 基础 01

    什么是计算机? cpu: 计算机的大脑; 读写速度 3GHZ 内存: (为了提高利用率) 缓冲硬盘和cpu 硬盘: 机械硬盘读写速度70mb/s 计算机里面读写的内容都是01代码 二进制(计算机只认二 ...

  4. python基础01 Hello World!

    摘要:简单的Hello Word! python 命令行 如已经安装python,那么在linux命令行中输入 $python 将进入python.乱吼在命令行提示符>>>后面输入 ...

  5. 0527 python 基础01

    折行的处理 \>>> print "hi \... hello Lucy!"hi hello Lucy! 自然字符串,字符串加上r或R前缀指定>>&g ...

  6. python基础 - 01

    python 变量名 在python中的变量命名,与其他语言大体相似,变量的命名规则如下: 变量名是数字.字母.下划线的任意组合 变量名的第一个字符不能是数字 系统的关键字不能设置为变量名    Ti ...

  7. 小小白的python之路------python基础01

    1. 不说python是啥了,百度一堆.,还是说说我学了啥 我说的是python3.5,其他的自己看着办 这个是下载链接啊,自己玩 https://www.python.org/ 我下载完成,使用py ...

  8. python基础01—基础数据类型

    数据类型 单位换算 最小的单位为bit,表示一个二进制的0或1,一般使用小写的b表示 存储的最小单位为字节(Byte),1B = 8b 1024B = 1KB 1024KB = 1MB 1024MB ...

  9. Python基础01 集合

    初始化 # python3 # coding = utf-8 mylist = [] for item in range(10): mylist.append(item * 10 + 3) myset ...

随机推荐

  1. linux基础命令---显示进程ps

    ps ps指令可以显示系统中当前进程的信息,它的输出结果是高度可定制的.如果您希望重复更新所选内容和显示的信息,请使用top(1)代替. 请注意,“ps-aux”与“ps aux”不同.POSIX和U ...

  2. Lambda表达式select()和where()的区别

    可能很多同学和我一样对于select()和where()区别并不是太清晰,其实两者还是有本质区别的. 1.where()用法:必须加条件,且返回对象结果. static void Main(strin ...

  3. Spring MVC前传递和后端接收的参数名不一致处理方式

    前端传递的变量和后端接收的变量名字不一致时,用注解@RequestParam来实现数据的传递 例如:@RequestParam(value="id") //实现商品的分类目录展现 ...

  4. 不懂RPC实现原理怎能实现架构梦

    RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC协议假定某些传输协议的存在 ...

  5. Android Camera2 预览,拍照,人脸检测并实时展现

    https://www.jianshu.com/p/5414ba2b5508 背景     最近需要做一个人脸检测并实时预览的功能.就是边检测人脸,边在预览界面上框出来.     当然本人并不是专门做 ...

  6. mysql 查询重复值

     SELECT `code`,count(`code`) as count   FROM `yt_coupon`   GROUP BY `code` HAVING count(`code`) > ...

  7. js通过 URL下载文件

    页面上一个button,点击之后触发一个function去请求数据,返回 pdf/epub 的URL,然后下载这个文件. 本来是直接用 a 写的,href里放资源地址,target设为'_blank' ...

  8. opencv学习之路(1)、示例程序

    一.介绍 工欲善其事必先利其器,首先当然是配置环境安装软件啦.  我安装的vs2012+opencv2.48以及opencv3.0.具体安装步骤按照浅墨大神的博客进行即可:http://blog.cs ...

  9. 基础_cifar10_序贯

    今天的基础研究主要是在cifar10数据集上解决一下几个问题: 1.从头开始,从最简单的序贯开始,尝试model的构造: 2.要将模型打印出来.最好是能够打印出图片,否则也要summary; 3.尝试 ...

  10. 20165310 NstSec2019 Week3 Exp1 逆向与Bof基础

    20165310 NstSec2019 Week3 Exp1 逆向与Bof基础 一.实验内容 实验目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用fo ...