python 2 和 3 的区别

1、用户输入的命令:python 2 中是raw_input("");python 3 中是input(“”)。

  2、默认字符编码:python 2 是ASCII码;python 3 是 Unicode码。

  3、windows的默认安装路径不同:python 2.7是c:\python27;python 3 是C:\Users\user\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Python 3.5(user表示当前安装的用户名)

  4、2 和 3 同时安装在Windows上需要更改环境变量,要将不是默认的python环境变量加到系统的环境变量中(如默认的python3.5,就将python2.7的加到系统的环境变量中)。具体如下(win8为例):

Python文件的

运行方法

1、python filename.py

2、./filename.py

Python文件的注意事项

1、文件命名的后缀为py

2、文件编写时,开头两行要指定解释器和字符编码,如下

#!/usr/bin/env python     指定解释器为Python,就可以使用./filename.py执行此文件

# -*- coding: utf-8 -*-     指定此文件的编码类型为UTF-8,就可以在此文件中输入中文

3、对filename.py要具有执行的权限,如果没有可以使用chmod 755 filename.py命令添加

Print语句

Print的作用

打印变量、数字和字符串

Print的用法

print(“”)

Print的注意事项

1、打印数字和变量不需要加引号。如print(name)、print(888)。

2、打印字符串需要引号。如print(“Welcome”)。

变量

语法

variable = "value"

ps:当value是数字或变量时不使用引号

变量的命名

1、只能为字母、数字和下划线

2、第一个字符不能为数字

3、命名较复杂时使用单词首字母大写或用下划线隔开,如:FileName或file_name

4、不能是一下名称['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']

字符编码

电脑可以识别的二进制码与语言的对应关系

1、ASCII码:发明最早;占用空间小;只适用于英文,不兼容其他语言;使用一个字节(8位),可以表示2**8=256-1个符号。

2、 Unicode码(又为万国码或统一码):占用空间较大;适用于所有语言;最少使用两个字节,可以表示2**16=65536-1个符号

3、UTF-8:集成了ASCII码和Unicode的优点,将语言分类保存,用一个字节保存英文,两个字节保存欧洲语言,三个字节保存东亚语言

Python注释

作用

1、不被python程序执行的内容

2、用于注明、解释某一行或某一段代码的作用和说明

3、多行注释可以设置成变量的值被打印出来,效果类似于制作文本模版

方法

1、单行注释:#+被注释的内容

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

input语句

用于用户输入数据使用

语法

input("")

ps:1、一般作为变量的值使用,如name = input("input your name:")

  2、python 2 的用户输入是raw_input

import语句

可以调用系统自带的标准模块,也可以调用第三方模块

语法

import 模块

例如:import os  #调用系统自带的OS模块

import的查找列表

使用print(sys.path)命令查看import的调用模块的目录列表,列表用逗号隔开,从左到右依次调用,第一个位置是当前目录。下图是以linux下的python3.4举例,其中红框中的/usr/local/lib/python3.4/dist-packages是全局环境变量的位置,一般将第三方的模块放到这个位置就可以随时调用了,

下图为python2.7中的路径是/usr/local/lib/python2.7/dist-packages(如下图,有时目录名是site-packages)。

getpass语句

用于用户输入密文的数据

语法

import getpass

password = getpass.getpass("")

ps:此语法只适用于在linux下使用,不能在pycharm下使用

标准库——os模块

这个模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行。

语法

import os

os.system("系统命令“)

举例

import os

os.system("ll /etc")    #调用linux系统下”ll“命令查看/etc下的目录文件列表

第三方库——tab补全模块

默认linux和mac系统下的python是没有tab补全功能的,需要手动创建tab.py,将写好的tab.py文件放到全局环境变量(dite-packages)目录里,就可以随时使用import调用了

tab.py文件的内容

 import sys
import readline
import rlcompleter if sys.platform == 'darwin' and sys.version_info[0] == 2:
readline.parse_and_bind("bind ^I rl_complete")
else:
readline.parse_and_bind("tab: complete") # linux and python3 on mac

for mac

 #!/usr/bin/env python
# python startup file
import sys
import readline
import rlcompleter
import atexit
import os
# tab completion
readline.parse_and_bind('tab: complete')
# history file
histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
try:
readline.read_history_file(histfile)
except IOError:
pass
atexit.register(readline.write_history_file, histfile)
del os, histfile, readline, rlcompleter

for linux

if语句

判断语句,逻辑上解释就是:如果符合某条件则执行对应的操作

语法

if 条件:

执行的操作

elif 条件:

执行的操作

else:

执行的操作

ps:注意冒号和缩进;如果判断的条件有很多,可以增加elif

举例

 _numbuter = 55
_guess = int(input("请输入你的猜测数字:”))
if _numbuter == _guess:
print("恭喜您,猜对了“)
elif _numbuter > _guess:
print("不好意思,您猜大了”)
else:
print(“不好意思,您猜小了”)

ps:1、判断语句的符号有:<(小于)、>(大于)、==(等于)、>=(大于等于)、<=(小于等于)

   2、判断多个条件同时成立是用“or”和“and”,or表示或者(其中一个条件满足即可),and表示且(同时满足)

   3、当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。如下例:

for循环语句

是从某个对象里面依次将元素读取出来,并在所有元素都处理过后结束循环

语法

for 变量 in 取值对象

...代码块...

break

举例

username = "aaa"
passwd = ""
for i in range(10):
if i < 3:
user = input("请您输入用户名:")
password = input("请您输入密码:")
if user == username and passwd == password:
print("恭喜您,输入正确")
break
else:
print("您输入的用户名密码不匹配,请重新输入。。。")
else:
print("您输入的错误次数过多")
break

文件的操作

python可以对文件进行打开,追加写入,关闭操作

打开文件

后台打开文件

语法

变量 = open("文件路径“,”打开模式“)

如:filename = open("/home/aa.txt","r")   命名变量filename以只读的方式打开/home/aa.txt文件

打开的模式有如下几种:

w:以写方式打开,
a:以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+:以读写模式打开
w+:以读写模式打开 (参见 w )
a+:以读写模式打开 (参见 a )
rb:以二进制读模式打开
wb:以二进制写模式打开 (参见 w )
ab:以二进制追加模式打开 (参见 a )
rb+:以二进制读写模式打开 (参见 r+ )
wb+:以二进制读写模式打开 (参见 w+ )
ab+:以二进制读写模式打开 (参见 a+ )

读取文件内容

结合打开文件使用,可以在后台调去文件中的内容

语法

filename.readline()

如下,调取文件内一整行的内容:

 filename = open("/home/aa.txt","r")
filename.readline()

文件写入

可以将对象写入到文件内,结合打开文件使用

语法

filename.write("content")     #content可以是字符串、变量和数字,为变量时不使用引号

如下将”公司名“写入到文件aa.txt中

 filename = open("/home/aa.txt","r")
filename.write("公司名")

文件关闭

对文件进行操作后,一定要将文件关闭

语法

filename.close()

如下

 filename = open("/home/aa.txt","r")
filename.write("公司名")
filename.close()

day1学习的更多相关文章

  1. day1 学习历程

    day1 我是一个在校大三学生,一个依然迷茫不知前景的大学混子= =,可以这么说吧 大学混子 真正开始决定好好学习大概在去年的12月份 那时经老师的提醒 开始正式接触软件开发 于是 从头开始学习语言 ...

  2. Day1学习总结

    # 1.print()# 2.input()# 3.if:# elif# else#4.while循环#5.for i in range()#6.break.continue#7.import ran ...

  3. 【Python Learning第一篇】Linux命令学习及Vim命令的使用

    学了两天,终于把基本命令学完了,掌握以后可以当半个程序员了♪(^∇^*) 此文是一篇备忘录或者查询笔记,如果哪位大佬看上了并且非常嫌弃的话,还请大佬不吝赐教,多多包涵 以下是我上课做的一些笔记,非常的 ...

  4. 「Android 开发」入门笔记

    「Android 开发」入门笔记(界面编程篇) ------每日摘要------ DAY-1: 学习笔记: Android应用结构分析 界面编程与视图(View)组件 布局管理器 问题整理: Andr ...

  5. 白盒测试实践--Day5

    累计完成任务情况: 阶段内容 参与人 完成个人情况说明并提交作业 全体 汇总作业,查漏补缺,完成代码测试总结 小靳.小龙 完成测试小结 小黄.小尹 完成静态代码检查结果报告 小靳 完成JUnit脚本编 ...

  6. 白盒测试实践--Day4 12.20

    累计完成任务情况: 阶段内容 参与人 完成个人情况说明并提交作业 全体 汇总作业,查漏补缺,完成代码测试总结 小靳.小龙 完成测试小结 小黄.小尹 完成静态代码检查结果报告 小靳 完成JUnit脚本编 ...

  7. 白盒测试实践--Day3 12/19/2017

    累计完成任务情况: 阶段内容 参与人 完成静态代码检查结果报告 小靳 完成JUnit脚本编写 小黄 完成CheckStyle检查 小靳 完成代码评审会议纪要和结果报告 小熊.小梁及其他 完成白盒测试用 ...

  8. 白盒测试实践--Day2

    累计完成任务情况: 阶段内容 参与人 完成CheckStyle检查 小靳 完成代码评审会议纪要和结果报告 小熊.小梁及其他 完成白盒测试用例 小尹 学习静态代码审核,确定评审表,开评审会确定高危区代码 ...

  9. 白盒测试实践--Day0

    白盒测试实践--Day0 累计完成任务情况: 阶段内容 参与人 开会学习作业要求,取得共识 全体 注: 1."阶段内容"划斜线表示完成. 2.采用倒序. 具体情况: 组长提前组织分 ...

随机推荐

  1. js数组去重的4种方法

    js数组去重,老生长谈,今天对其进行一番归纳,总结出来4种方法 贴入代码前 ,先对浏览器Array对象进行支持indexOf和forEach的polyfill Array.prototype.inde ...

  2. H2 数据库

    最近做演示项目的时候需要一个数据库,但不想安装.于是查看了embedded datasource : h2 h2: 依赖: <dependency> <groupId>com. ...

  3. 小白Linux入门 四

    http://edu.51cto.com/lesson/id-11372.html 28了 文件管理类命令 目录: mkdir mkdir /tmp/x mkdir -p /tmp/a/b -pv b ...

  4. SQL Server 2016 SP1 标准版等同企业版?!

    上周微软发布了SQL Server的历史性公告:SQL Server 标准版的SP1提供你和企业版一样得功能.你不信的话?可以点击这里. 这改变了整个关系数据库市场,重重打击了Oracle.在今天的文 ...

  5. 在Mac下创建ASP.NET Core Web API

    在Mac下创建ASP.NET Core Web API 这系列文章是参考了.NET Core文档和源码,可能有人要问,直接看官方的英文文档不就可以了吗,为什么还要写这些文章呢? 原因如下: 官方文档涉 ...

  6. Spring 3.0 AOP (一)AOP 术语

    关于AOP.之前我已写过一个系列的随笔: <自己实现简单的AOP>,它的关注点在于实现.实现语言是C#,实现方式为 自定义实现 RealProxy 抽象类.重写Invoke方法,以便进行方 ...

  7. JDK,JRE,JVM分别是什么?

    JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK). JDK包含的基本组件包括: javac – 编译器,将源程序转成字节码 jar – 打包工具,将相关 ...

  8. 转载:《TypeScript 中文入门教程》 15、可迭代性

    版权 文章转载自:https://github.com/zhongsp 建议您直接跳转到上面的网址查看最新版本. 可迭代性 当一个对象实现了Symbol.iterator属性时,我们认为它是可迭代的. ...

  9. [moka同学笔记]五、Yii2.0课程笔记(魏曦老师教程)[审核功能]

  10. Linux中shell脚本自动输入密码

    最近遇到蛋疼的事,就是在shell脚本中需要获取root权限,因此在shell脚本运行过程中需要输入密码. 懒惰的我当然想让shell在执行过程中就可以自动输入密码,这样就可以抽空看看妹子图.. 我通 ...