Python基础,,Python基础1、


Python基础

1、hello world

字符串单双引号即可,‘‘‘或"""三引号也可以,通常用于多行文档原生输出。

#双引号>>>print "hello world"#单引号>>>print ‘hello world‘#方法调用>>>print(‘hello world‘)>>>print("hello world")#,号结尾不换行打印>>>print "hello world" ,

2、编写python脚本与中文乱码

2.1 创建python文件test.py

print(100)print(‘中国人‘)

2.2 执行python文件

$>python test.py

2.4 出现如下错误

技术分享图片

2.5 文件中添加utf-8字符集声明

#-*- coding:utf-8 -*-print(100)print(‘中国人‘)

2.6 执行打印

$>python test.py

2.7 结果如下

技术分享图片

3、变量无序声明,拿来即用

#无需定义变量>>>x = 1000>>>print(x)

4、缩进格式定义代码块

#以缩进方式代表代码块if True :    pass    print "hello world1"else :    print "hello world2"

5、一条语句换行

x = 1 +     2 +     3 +     4

6、String

6.1 定义方式

s = ‘hello world‘s = "hello world"#格式原样输出,可用于注释s = """hello worldhello worldhello worldhello world"""#定义unicode字符方式s = u"hello \u0061"

6.2 字符串操作

s = "hello world"print s[0]      #print s[2:4]    #ll,前包后不包print s[2:]     #llo worldprint s[:4]     #hellprint s[:-1]    #hello worlprint s[:]      #hello world#重复几遍操作print s * 2     #hello worldhello world#滤除两边的空格,等价于trim" hello world ".strip(" ")#滤除左边的指定字符" hello world ".lstrip(" \r\t\n")#滤除右边的字符" hello world ".rstrip("\r\n;")

6.3 格式化操作

#a is 1 , b is 2s = "a is %d , b is %d"%(1,2)   #a is 1 , b is 2s = "a is {x} , b is {y}".format(x = 1 , y = 2)

7、变量定义

#变量必须初始化a= 100#错误,没有赋值b#同时定义多个变量并赋值a , b , c = 1 , 2 ,3

8、python数据类型

#inta = 100#floata = 100.0#longa = 100L#复数a = 0 + 1j#j的平方是-1print pow(a , 2)#stringa= "www.baidu.com"

9、list

list表示列表或数组,可以重复,有序,等同于java中的list集合,list内容可以修改。

9.2 list操作

list = [1,2,3,4]print list[0]print list[0:2]print list[2:]print list[:4]print list[:-1]#重复操作print list * 2#重新赋值list[1] = 100print list[1]

9.2 99表格

rows = [1,2,3,4,5,6,7,8,9]cols = [1,2,3,4,5,6,7,8,9]#for循环,输出99表格for r in rows :    for c in range(1 , r+1) :        if c <= r :            print str(c)+"x" + str(r) + "=" + str(c * r) + str("\t"),    print

9.3 range对象

range是范围对象,指定起始(包括)、结束(不包括)和步长。

# 1,3,5,7,9r = range(1 , 10 , 2)#默认步长1r = range(1 , 4)

10、元组

元组类似于数据表中的一条记录,每个组员有不同的类型,内容不能修改,使用()表示。

t = (1 , "tom" , 12)#访问第一个组员print t[0]print t[2:]#错误,不可以赋值t[1] = "tomas"

11、字典

字典等同于java中的map,使用kv方式存储。通过key查找v。使用{}构造。

11.1 dict基本操作

d = {1:"tom1" , 2 : "tom2" , 3 : "tom3"}#使用的key,不是下标print d[1]#可以修改值d[1] = "tomas"

11.2 遍历字典

d = {1:"tom1" , 2 : "tom2" , 3 : "tom3"}#遍历所有keysfor k in d.keys():    print k    #遍历所有valuesfor v in d.values():    print v#遍历所有条目for k,v in d.items():    print "%d -> %s"%(k,v)    #遍历所有条目2for e in d.items():    print "%d -> %s"%(e.key(),e.value())

12、类型转换

#str()转成字符创print str(100) + "2000"#int()print int(‘100‘) + 200#float()print float(‘100‘)#eval()将字符串表示的表达式转换成表达式运算print(eval("1 + (1 - (1 * (1 / (1 + 2))))"))#将对象转换成string表示print repr(d)list = [1,1,1,2,2,3]set = set(list)    #不重复集合print set

13、set

set不重复,可以使用list集合来创建set集合。

list = [1,1,1,2,2,3]#1,2,3set = set(list)

14、运算符

print 1 + 2print 1 - 2print 1 * 2print 1 / 2         #整除print 1 % 2         #取模print 2 ** 3        #幂运算 8print 1.0 / 2       #小数除 0.5print 1.0 // 2      #整除   0

15 、进制变换

print hex(97)   #转换成十六进制串  0x61print oct(97)   #转换成八进制串    0141print chr(97)   #将ascii转换成字符 a 

16、位运算

print 0 & -1    #0print 0 | -1    #-1print 0 ^ -1    #-1print 1 << 1  #2print -1 >> 1   #-1 ,有符号移动

17、逻辑运算

print True and False    #and    print True or False     #orprint not False         #not

18、成员运算

list = [1,2,3,4]print 1 in list     #True

19、身份运算

身份运算和==相似,“==”判断对象内容是否相同,is判断对象是否是同一对象。

a = [1,2,3,4]b = a[:]print a is b    #False ,不是同一对象 print a == b    #True  ,内容相同

20、条件语句

条件语句语法是if ... elif ... else ..。

age = 30if age < 18 :    print "少年"elif age > 50:    print "老年"else :    print "中年"

21、循环

21.1 for循环

list = [1,2,3,4]for x in list:    print x

21.2 while循环

#实现9x9乘法表row = 1while row <= 9:    col = 1    while col <= row:        print str(col) + "x" + str(row) + "=" + str(col * row) + "\t",        col += 1    print    row += 1    #百钱买百鸡问题#公鸡数cock = 0#母鸡数hen = 0#小鸡数chicken = 0for x in range(0, 20 + 1):    for y in range(0, 34):        for z in range(0, 301, 3):            sum = x * 5 + 3 * y + z / 3            count = x + y + z            zz = z / 3            if sum == 100 and count == 100:                print "公鸡 :%d,母鸡:%d,小鸡:%d".%(x,y,z)

22、定义函数

#函数需要返回语句def add(a , b) :    return a + b#调用函数print add(1,2)

23、IO操作

# -*-coding:utf-8-*-f = open("d:\\java\\1.txt")lines = f.readlines()for l in lines:    print l ,str = """helll world    helll world        helll world            helll world                helll world"""#写入文件 mode=r | wb |# w : overwrite覆盖模式# a : append追加模式f2 = open("d:\\java\\2.txt" ,mode="ab")f2.write(str)f2.close()#重命名文件import osos.renames("d:\\java\\2.txt" , "d:\\java\\2222.txt")os.remove("d:\\java\\2222.txt")os.mkdir()dir = open("d:\\")#列出目录信息list = os.listdir("d:\\")for e in list:    print e#导入其他模块的成员from util import *print add(1,2)

24、模块判断与参数提取

24.1 主函数运行

#判断当前文件是否直接运行,还是被其他引用#直接运行的时候值为"__main__"if __name__ == ‘__main__‘:        print ‘hello world‘    

24.2 参数提取

通过sys的args属性提取参数列表:

import sys#提取脚本执行时的参数arr = sys.argsarr[0]

24.3 反射访问

print getattr(obj , "name")

25、日期函数

import datetimedatetime.datetime.now()datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")‘‘‘strftime(format[, tuple]) -> string将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出python中时间日期格式化符号:%y 两位数的年份表示(00-99)%Y 四位数的年份表示(000-9999)%m 月份(01-12)%d 月内中的一天(0-31)%H 24小时制小时数(0-23)%I 12小时制小时数(01-12)%M 分钟数(00=59)%S 秒(00-59)%a 本地简化星期名称%A 本地完整星期名称%b 本地简化的月份名称%B 本地完整的月份名称%c 本地相应的日期表示和时间表示%j 年内的一天(001-366)%p 本地A.M.或P.M.的等价符%U 一年中的星期数(00-53)星期天为星期的开始%w 星期(0-6),星期天为星期的开始%W 一年中的星期数(00-53)星期一为星期的开始%x 本地相应的日期表示%X 本地相应的时间表示%Z 当前时区的名称%% %号本身‘‘‘

Python基础

评论关闭