Quantcast
Channel: CodeSection,代码区,Python开发技术文章_教程 - CodeSec
Viewing all articles
Browse latest Browse all 9596

python之路:Day01 --- Python基础1

$
0
0
本节内容

1.python介绍

2.发展史

3.变量

4.用户输入

5.表达式 if...else语句

6.表达式 for 循环

7.表达式 while 循环

8.模块初始

9.数据类型初始

10.数据运算

一、Pyhon介绍 一、编译型与解释型语言

编译型语言是将源程序翻译成可执行的目标代码,翻译与执行是分开的;而解释型语言是对源程序的翻译与执行一次性完成,不生成可存储的目标代 码。这只是表象,二者背后的最大区别是:对解释型语言执行而言,程序运行时的控制权在解释器而不在用户程序;对编译型语言执行而言,运行时的 控制权在用户程序。

从字面上看,“编译”和“解释”的确都有“翻译”的意思,它们的区别则在于翻译的时机安排不大一样。打个比方: 假如你打算阅读一本外文书,而你不知 道这门外语,那么你可以找一名翻译,给他足够的时间让他从头到尾把整本书翻译好,然后把书的母语版交给你阅读;或者,你也立刻让这名翻译辅助 你阅读,让他一句一句给你翻译,如果你想往回看某个章节,他也得重新给你翻译。

两种方式,前者就相当于我们刚才所说的编译型:一次把所有的代码转换成机器语言,然后写成可执行文件;而后者就相当于我们要说的解释型。

二、静态语言与动态语言

动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类 型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。

静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型

综合上述 python是一门动态解释型的语言。
二、Pyhon发展史

1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理,包含 表和词典在内的核心数据类型,以及模块为基础的拓展系统

Python 1.0 - January 1994 增加了 lambda , map , filter and reduce .

Python 2.0 - October 16, 2000,加入了内存回收机制,构成了现在Python语言框架的基础

Python 2.4 - November 30, 2004, 同年目前最流行的WEB框架Django 诞生

Python 2.5 - September 19, 2006

Python 2.6 - October 1, 2008

Python 2.7 - July 3, 2010 python官方公布只支持到2020年

Python 3.0 - December 3, 2008

Python 3.1 - June 27, 2009

Python 3.2 - February 20, 2011

Python 3.3 - September 29, 2012

Python 3.4 - March 16, 2014

Python 3.5 - September 13, 2015

所以现在我所选择用的是Python3.5 ,之后的所有代码都是在这个环境下运行的

三、变量 一、声明变量 #!/usr/env python # -*- coding:utf-8 -*- name = "xiaoming"

上述代码声明了一个变量,变量名为:name, 变量name的值为:"xiaoming"

二、变量的赋值 name = "xiao ming" name2 = name print(name,name2) name = "xiao hua" print("What is the value of name2 now?"name,name2) 三、变量名的定义规则:

1、变量名只能是 字母、数字或下划线的任意组合

2、变量名的第一个字符不能是数字

3、以下关键字不能声明为变量名

['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'] 注释

当行注释:# 被注释的内容

多行注释:''' 被注释的内容 '''

四、用户输入 #!/usr/env python # -*- coding:utf-8 -*- name=input("请输入你的名字:") print("Hello",name)

输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:

#!/usr/bin/env python # -*- coding: utf-8 -*- import getpass pwd = getpass.getpass("请输入密码:") # 打印输入的内容 print(pwd)

但是在windows中的PyCharm不好使

五、表达式 if...else 一、用户登录验证 # 提示输入用户名和密码 # 验证用户名和密码 # 如果错误,则输出用户名或密码错误 # 如果成功,则输出 欢迎,XXX! #!/usr/bin/env python # -*- coding: encoding -*- name = "xiao gou" password = "123" username = input('请输入用户名:') pwd = input('请输入密码:') if name == username and password == pwd: print("欢迎",name) else: print("用户名和密码错误") 二、猜年龄

在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了

1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 4 my_age = 28 5 6 user_input = int(input("请输入一个数字:")) 7 8 if user_input == my_age: 9 print("恭喜你蒙对了!") 10 elif user_input < my_age: 11 print("你猜小了!") 12 else: 13 print("你猜大了!") 猜年龄 六、表达式 for 最简单的循环10次 #!/usr/bin/env python # -*- coding: encoding -*- for i in range(10): print("loop:", i ) 输出: loop: 0 loop: 1 loop: 2 loop: 3 loop: 4 loop: 5 loop: 6 loop: 7 loop: 8 loop: 9 需求一:还是上面的程序,但是遇到小于5的循环次数就不走了,直接跳入下一次循环 for i in range(10): if i<5: continue #不往下走了,直接进入下一次loop print("loop:", i )

continue 是跳出本次循环

需求二:还是上面的程序,但是遇到大于5的循环次数就不走了,直接退出 for i in range(10): if i>5: break #不往下走了,直接跳出整个loop print("loop:", i )

break 是直接跳出整个循环,退出程序

七、表达式 while 有一种循环叫死循环,海枯石烂代码 count = 0 while True: print("你是风儿我是沙,缠缠绵绵到天涯...",count) count +=1

死循环还是少写为好,上面代码循环一百次就退出吧

count = 0 while True: print("你是风儿我是沙,缠缠绵绵到天涯...",count) count +=1 if count == 100: print("到此为止吧!") break 八、模块初始 sys模块 #!/usr/env python # -*- coding:utf-8 -*- #Version:Python3.4 import sys print(sys.path) # 打印环境变量 print(sys.argv) #输出 $ python test.py helo world ['test.py', 'helo', 'world'] #把执行脚本时传递的参数获取到 os模块 #!/usr/bin/env python # -*- coding: utf-8 -*- import os os.system("dir") #调用系统命令 完全结合一下 import os,sys os.system(''.join(sys.argv[1:])) #把用户的输入的参数当作一条命令交给os.system来执行 九、数据类型初始 一、数字

1.int(整型)

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

在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

2.long(长整型)

3.float(浮点型)

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

二、布尔值

真或假

1或0

True 或 False

三、字符串   "hello world" 

万恶的字符串拼接:

python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时候需要在内存中开辟一块连续的空,并且一旦需要修改字符串的话,就需要再 次开辟空间,万恶的+号每出现一次就会在内从中重新开辟一块空间。

字符串格式化输出

name = "xiao ming" print "i am %s " % name #输出: i am xiao ming PS:字符串是%s; 整数是%d; 浮点数是%f

字符串常用操作:

移除空白

分割

长度

索引

切片

四、列表

创建列表:

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

常用操作:

索引

新增

删除

键、值、键值对

循环

长度

十、数据运算

算数运算:


python之路:Day01 --- Python基础1

比较运算:


python之路:Day01 --- Python基础1

赋值运算:


python之路:Day01 --- Python基础1

逻辑运算:


python之路:Day01 --- Python基础1

身份运算:


python之路:Day01 --- Python基础1

位运算:


python之路:Day01 --- Python基础1
三元运算 result = 值1 if 条件 else 值2

如果条件为真:result = 值1

如果条件为假:result = 值2

a,b,c = 1,3,5 d = a if a > b else c print(d) # d = 5


Viewing all articles
Browse latest Browse all 9596

Trending Articles