摘要:Python基础学习: 注释、字符串操作、用户交互、流程控制、导入模块、文件操作、目录操作。

上一节讲了分别在windows下和linux下的环境配置,这节以linux为例学习基本语法。代码部分需要保存到以.py结尾的文件,就可以进行测试了。这里主要介绍一些常用的语法,可能并不全面,后期再根据需要添加吧。

1.编程风格

   缩进要统一

有种说法:python语言是"靠缩进控制代码的语言",的确如此。

2.注释代码

   单行:#

多行:'''

代码:

#!usr/bin/env python

b='hello'
c='world'
#print '' #注释掉此行,不打印1
'''print b
print c''' #注释掉这两行,不打印hello world
print 'ok' #打印 ok

结果:

ok

3.字符串操作

 3.1 输出多行字符串

代码:

#!usr/bin/env python

a='''the first row,
the second row,
the third row!'''
print a

结果:

the first row,
the second row,
the third row!

3.2 去掉空格

语法:s.strip(rm)    删除s字符串中开头、结尾处,位于 rm删除序列的字符

代码:

c='   hello world'
print c.strip()

结果:

hello world

3.3 计算字符串长度

   语法:len()

代码:

c='   hello world'
print len(c)

结果:


3.4 字符串转int

    代码:

#!usr/bin/env python
d = int('')
print 'values is:',d+

结果:

value is: 

3.5参数化输出字符串

     代码:

age=;
print 'you are',age,'years old!'

结果:

you are  years old!

如果有多个参数,可以用%s输出

代码:

name = 'john'
age=
print '''my name is:%s,
i am %s years old!''' %(name,age)

结果:

my name is:john,
i am years old!

4. 用户交互

     raw_input  符合用户输入的习惯,把任何用户输入都转换成字符串存储,在需要其它类型的数据时,调用相应的函数进行转换

input    用户输入什么就存储什么,所以用户输入必须符合python语法要求,否则会出错

代码:

#!usr/bin/env python

name=raw_input('please input your name:') #得到的是字符串
age=input('please input your age:') #得到的是数字
print 'your name is %s and age is %s' % (name,age)

结果:

please input your name:john
please input your age:
your name is john and age is

5. 流程控制

 5.1 if...elif...else...

     代码:

#!usr/bin/env python

age =
if age < :
print 'too young!'
elif age == :
print 'right age!'
else:
print 'too old!'

结果:

too young!

5.2while...true...

     代码:

#!usr/bin/env python

while True:
name = raw_input("please input your name:").strip()
if len(name) == :
print "empty name!try again"
continue;
break

结果:

please input your name:
empty name!try again
please input your name:
empty name!try again
please input your name:john

5.3 for...

   代码:

for i in range(,):
print i

结果:


5.4 for...else...

在for循环完成后才执行else;如果中途从break跳出,则连else一起跳出。

代码:

#!usr/bin/env python

#i不会>,不走break,输出>
for i in range(,):
if i>:
break;
else:
print '>10!' #i会>,走break,不输出>
for i in range(,):
if i>:
break;
else:
print '>5'

结果:

>!

6.导入模块

导入模块有三种方式:

  1. import os
  2. from os import system
  3. import os as operasys

代码:

#!usr/bin/env python

#直接导入os模块,调用linux系统命令
import os
os.system('df -h') #导入os模块的一部分,调用linux命令
from os import system
system('df -h') #导入os模块,并且重命名为operasys,调用linux命令
import os as operasys
operasys.system('df -h')

以上三种方式,执行结果相同,都调用系统命令df -h显示磁盘使用情况。

7.文件操作

  7.1创建

f=file('contact_list.txt','w')    #'w'如果文件不存在,创建文件,存在则打开
f.write('hello')
f.close()

创建一个contact_list.txt文件,文件内容为'hello'.

7.2读取

f=file('contact_list.txt')
f.read() #读取一遍之后就没了,需要再次取值需保存到变量
f.read([size]) #size为读取的长度,以byte为单位
f.readline([size]) #读一行,如果定义了size,有可能返回的只是一行的一部分
f.readlines([size]) #把文件的每一行作为一个list的一个成员,并返回这个list

   7.3追加

f=file('contact_list.txt','a')
f.write('hello')
#f.flush() #写日志的时候可以用这个
f.close()

以上代码将'contact_list.txt'文件结尾追加内容'hello'.

  7.4位置

f.tell() #返回文件操作标记的当前位置,以文件开头为原点
f.next() #返回下一行,并将文件操作标记位移到下一行
f.seek(offset[,whence]) #将文件的操作标记移到offset的位置。

7.5内容替换

#!usr/bin/env python

import fileinput
for line in fileinput.input('1.txt',inplace=):#做完替换后,立刻回到文件的开始行
line = line.replace('','')
print line,#此行必须有,否则替换不成功  

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

8.目录操作

import os
     os.getcwd() #获取当前目录
     os.mkdir('file') 创建目录
     os.listdir('.') #返回指定目录下的所有文件和目录名
     os.remove() #删除目录下文件
     os.path.isfile() #检测路径是文件还是目录
     os.path.isdir() #检测路径是文件还是目录
     os.path.isabs() #判断是否是绝对路径
     os.path.exist() # 检验给出的路径是否真的存在

os.path.split() #返回一个路径的目录名和文件名
     os.path.dirname() #返回一个路径的路径名
     os.path.basename() #返回一个路径的文件名

os.rename(old,new) #目录重命名
     os.path.getsize(filename) #获取文件大小

python入门到精通[二]:基础学习(1)的更多相关文章

  1. python入门到精通[三]:基础学习(2)

    摘要:Python基础学习:列表.元组.字典.函数.序列化.正则.模块. 上一节学习了字符串.流程控制.文件及目录操作,这节介绍下列表.元组.字典.函数.序列化.正则.模块. 1.列表 python中 ...

  2. Python基本语法,python入门到精通[二]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]我们已经在自己的windows电脑上搭建好了python的开发环境,这篇博客呢我就开始学习一下Python的基本语法.现 ...

  3. Python基本语法[二],python入门到精通[四]

    在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...

  4. Python运算符,python入门到精通[五]

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...

  5. Git版本控制软件结合GitHub从入门到精通常用命令学习手册(转)

    简要参考:http://www.tuicool.com/articles/mEvaq2 http://gitref.org/zh/index.html GIT 学习手册简介 本站为 Git 学习参考手 ...

  6. iOS开发-UI 从入门到精通(二)

    iOS开发-UI 从入门到精通(二)是对 iOS开发-UI 从入门到精通(一)知识点的巩固,主要以习题练习为主,增强实战经验,为以后做开发打下坚实的基础! ※开发环境和注意事项: 1.前期iOS-UI ...

  7. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  8. 【UML】NO.70.EBook.9.UML.4.001-【PowerDesigner 16 从入门到精通】- 基础概念

    1.0.0 Summary Tittle:[UML]NO.70.EBook.9.UML.4.001-[PowerDesigner 16 从入门到精通]-  基础概念 Style:DesignPatte ...

  9. Python入门到精通学习书籍推荐!

    1.Python基础教程(第2版 修订版)<Python基础教程(第2版修订版)>包括Python程序设计的方方面面,内容涉及的范围较广,既能为初学者夯实基础,又能帮助程序员提升技能,适合 ...

随机推荐

  1. 《DSP using MATLAB》示例Example5.15

    代码: x1 = [1,2,2]; x2 = [1,2,3,4]; y1 = circonvt(x1,x2,5); % N = 5 n1 = 0:1:length(x1)-1; n2 = 0:1:le ...

  2. Appium中部分api的使用方法

    使用的语言是java,appium的版本是1.3.4,java-client的版本是java-client-2.1.0,建议多参考java-client-2.1.0-javadoc. 1.使用Andr ...

  3. oracle 安装

    一 : 建议安装在64位机器上,程序下载地址 http://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_1of2. ...

  4. 摸索探寻之Mac OS 使用及快捷键

    刚发现的一个介绍Mac OS入门的帖子,新入手Mac的同学可以看看http://www.cnblogs.com/chijianqiang/archive/2011/08/03/2126593.html ...

  5. Codeforces Round #FF(255) DIV2

    A - DZY Loves Hash 水题,开辟一个数组即可 #include <iostream> #include <vector> #include <algori ...

  6. cocos2d-x初步了解

    1.渲染 2.帧率(FPS) 超过75一般就不容易察觉到有明显的流畅度提升 >50 非常好! 30~40  一般, 20~30  及格,有点勉强. 3.渲染驱动游戏 事件驱动游戏 4.cocos ...

  7. 动态调用WebService(C#) (非常实用)

    通常我们在程序中需要调用WebService时,都是通过“添加Web引用”,让VS.NET环境来为我们生成服务代理,然后调用对应的Web服务.这样是使工作简单了,但是却和提供Web服务的URL.方法名 ...

  8. linux常用命令(四)

    1.压缩解压命令 gzip命令 默认为.gz格式文件 1.只能压缩文件不可压缩目录 2.不保留源文件 压缩   giz 解压   gunip tar命令 -c产生打包文件 -v显示相信打包压缩过程 - ...

  9. 批量创建AD测试账号

    在现场中,有时候客户会要求做一下AD压力测试,需要批量创建很多AD用户.奉献此代码供各位参考.   1: <# 2:   3: .DESCRIPTION 4: 批量创建AD测试账号 5:   6 ...

  10. Oracle数据库基础知识2

    字符操作相关_1 1.CONCAT关键字作用:连接字符串语法:CONCAT(字串1, 字串2)例如: CONCAT('hello','world') FROM DUAL; 注意:Oracle的CONC ...