python学习笔记

数据类型

数字类型

int  long   float  complex (复数)

c1=3.14j   //创建一个复数

python3以后没有long类型

 

a="10";

b=int(a);  //将字符串转为int

a=10;

b=float(a)  //将整型转为浮点型

list=["aaa",1,2,5]  

tuple=tuple(list)  //将列表转元祖

tuple=("aaa",bbb,11,22)

list=list(tuple)  //将元祖转列表

tuple=(("name","zhangsan"),("sex","nan"))

dict=dict(tuple)  //将多维元祖转成字典(多维元祖的每个元祖中只能长度为2,即一个座位key,一个作为value,超过2个转字典就会报错)

dict={'name':'ls','sex':'m'}

yuanzu1=tuple(dict)   //将字典转成元祖后只有字典的key没有value

 

不同进制互相转换

练习:

bin(int("10",10))   //十进制的10转成二进制

hex(int("17",8))  //8进制的"17"转成16进制

 

字符串的操作

python中的字符串从左到右索引默认是从0开始,

最大范围是字符串长度少1,从右到左索引是从-1开始(和java一样)

s1="a1"

s2="b1"

s3=s1+s2   //字符串拼接

python中的字符串可以是单引号,双引号,三引号类型s1="a1"s2='bbb's3='''aaabbbccc'''

字符串切分split(" ") //按空格切分

字符串替换replace("old","new") //字符串替换

字符串转大写upper() //将字符串转成大写

字符串转小写lower() //将字符串转小写

字符串首字母大写capitalize() //将字符串的首字母转成大写

string.count(str,beg,end)   //返回str在string中出现的次数,如果beg,或end指定则返回指定范围内str出现的次数

string.center(width)  //返回一个原字符串居中,并使用空格填充至长度为width的字符串,width小于字符串的长度时,返回字符串本省

string.decode(encoding='UTF-8'errors='strict')   //字符串以指定的格式解码,如出错则报异常,除非errors指定为‘ignore’或者‘replace’

string.encode(encoding='UTF-8',errors='strict')   //字符串以指定的格式编码,如出错则报异常,除非errors指定为‘ignore’或者‘replace’

string.endswith(str,beg,end)   //判断字符串是否以str结尾,若指定起始区间,则在指定的区间中判断

string.startswith(str,beg,end)   //判断字符串是否以str开头,若指定起始区间,则在指定的区间中判断

string.expandtabs(8)   //可以将string中的tab缩进换成指定个数的空格,不指定空格数则表示去除tab缩进

string.find(str,beg,end)  //在字符串中找str第一次出现的索引,若指定区间就在区间中找,找不到返回-1

string.index(str,beg,end)  //和find方法一样,区别在于找不到会报异常

string.isdecimal()   //如果string中只包含十进制数字则返回True,否则返回false

string.isdigit()    //如果字符串中只包含数字则返回true,否则返回false

string.islower()  //判断字符串是否全为小写,是则返回true

string.isupper()  //判断字符串是否全为大写,是则返回true

string.ljust(width,“b”)    //返回一个原字符串左对齐,并使用"b"填充至长度为width的字符串,若没指定用什么填充,默认为空格

string.zfill(width)   //返回一个原字符串右对齐,并使用0填充至长度为width的字符串

string.lstrip(“b”)   //截掉字符串左边的"b",未指定则默认切掉空格

string.strip("b")  //去掉左右的字符串“b”,未指定则默认切掉空格

string.replace(str1,str2,num)  // 把string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次

string.swapcase()  //将string的大小写翻转

 

获取子字符串

  s="abcdef"

  s1 = s[1:3] //bc,[1:3]通过字符串下表获取子字符串,包含头但不包含尾

  print s[0] //打印第一个字符

  pritn s[2:] //打印第三个字符以后的所有字符

  print s * 2 //打印两次字符串

   print(s[:2])   //打印字符串的前两个字符,不包含结尾2的字符

python列表

  ss=['a','b','c','d','e','f','g'] //定义一个列表字符串

  print (ss[1:4]) //打印第二到第4的字符,包含1不包含4

  print (ss[1:4:2]) //第三个参数2指定了步长,表示每个1个字符再取

  print s[0] //打印第一个字符

  pritn s[2:] //打印第三个字符以后的所有字符

  print (ss * 2) //将列表中的元素重复放入列表2次

  ss.append("h")   //像列表中添加元素,添加到list末尾

  del ss[2]   //删除列表中的第3个元素

  len(ss)   //获取列表的长度

  a=[1,2,3] b=[4,5,6]

  print(a+b)  //列表拼接[1,2,3,4,5,6]

  列表常见函数:

  a=[1,2,3]   b=[4,5,6]

  operator   //比较两个列表

  

  

  

   

   

python元祖tuple1=('a','b','c','d','e','f')

print tuple1[0]  //打印元祖的的第一个元素
print tuple1[1:3] //打印元祖的第二个到第三个元素
print tuple1[2:] //输出从第三个元素开始的所有的所有元素
print tuple1 * 2 //输出两次元祖列表中可以修改列表的值,
元祖中不能修改元祖的值
list1=['a','b','c','d','e','f']
tuple1=('a','b','c')
list1[2]='aaa' //合法应用
tuple1[2]='abc' //非法应用

python字典列表是有序的对象集合,字典是无序的对象集合
dict = {}

dict["one"] = "this is one" //将key为one的值设置为
this is onedict[2]="this is two" //将key为2的值设置为this is two
dict.keys() //获取所有的key
dict.values() //获取所有的values

python集合
set和dict类似,也是一组key的集合,但不存储value。无序和无重复元素的集合
ss=set([1,2,3])
ss.add() //添加元素
ss.remove() //删除元素
python语法

python中代码块是依靠缩进来区分,java中使用{}来控制  
 
if判断语句  
if True:    

  print("True")  
else:    
  print("False")  

if... elif...语句
if expression:    
  xxxx;  
elif expression:   
  xxxx;  
else:    
  xxxx

python的单行注释采用#开头

#第一个注释

python的多行注释采用''' 或者"""'''  
这是多行注释
'''
  xxx
  xxxx
'''

input("请输入字符") //用于等待用户输入(python3中语法)
raw_input("请输入字符") //用于等待用户输入(python2中语法)

一行中使用多条语句时用;分割
x="aaa";print(x)


python的算术运算符
  +、-、*、/、%、**(幂)、//(向下取整)
  print(2**3) //8;表示2的3次方
  print(10//3) //3;向下取整
 
python的赋值运算符  +=
  -=
  *=
  /=
  %=
  **= //幂运算赋值
  //= //向下取整并赋值

python的成员运算符
  
in //判断值在指定的序列中是否存在,存在返回true,否则false
  not in //判断值在指定的序列中不存在,不存在发挥true,否则false
  

python身份运算符

  is   //判断两个标识符是否引用自一个对象(即判断两个对象是否是同一内存空间)

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

  a=10

  b=10

  if a is b:

    print("有相同标识")

  else:

    print("没有相同标识")

 

python循环

  lists=["a","b","c","d",""e]

 for i in lists:

  print(i)

    

 for i in range(len(lists))

  print(lists[i])

//for循环可以跟else连用 

  for i in lists:

    print(i)

  else:

    print("循环完毕")

//for循环设置步长

  for i in range(0,10,2):  //range(0,10,2) 从0-10的数,且增长的步长为2

    print(i)

 

//while循环

  count=0

  while count < 5:

    print(count)

    count+=1

  else:

    print("count大于5")

break,continue的用法和java用法一致

python pass是空语句,不会做任何事情

 

 python的随机函数

  choice(range(10))  //产生一个从0-9的随机数

  randrange(10,20,2)  //从指定的基础递增的集合中获取一个随机数

  random()  //产生一个[0,1)范围内的随机数

  shuffle(list) //将序列的所有元素随机排序

  uniform(x,y)  //产生一个[x,y]范围内的随机实数

 时间函数

  time.time()  //获取时间戳  1556003333.6916926

  time.localtime()  //返回浮点数的时间戳方式向时间元组转换

   

  time.asctime( time.localtime(time.time()) )   //获取格林威志的格式化时间

  time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())  //格式话日期

  a="2018-10-01 12:00:00"

  date = time.strptime(a,"%Y-%m-%d  %H:%M:%S")  //将字符串转为日期

  time.mktime(date)   //讲一个日期转为时间戳

  time.sleep(secs)   //推迟调用线程的运行,secs指秒数

  

 函数和异常

 

后台启动python服务

 nohup python robot.py & > ./log/log1.log

  








 



 

返回一个将源字符串居中,并用空格填充至长度width的新字符串
posted @ 2019-04-17 18:54  caoyp  阅读(333)  评论(0编辑  收藏  举报