7月16日Python02

实训day02

1.注释

  1. 注释的作用:增加程序的可读性、作为调试用、提高团队的合作效率。
  2. 注释的分类:
    <1>单行注释 以井号(#)开头,右边的所有内容当做说明
    <2>多行注释 以三对单引号(’’’注释内容’’’)将注释包含起来,多行注释、编码可读性强

2.变量 Python(一门强类型语言)

a=10   //Python底层
print(a)
b=12.0
print(b,type(b))  // type是判断Python的数据类型

备注:在Python中定义变量必须赋值,否则会报异常。

3.变量的命名

User_name="李四"     //大
user2_Name="张三"   //小

※2user2_name="某某"是错的,数字不能开头,采用驼峰命名法,大驼峰(帕斯卡命名)、小驼峰

4.标识符(Python中所有可以自主命名的内容 ex:变量名、函数名、类名)

1.标识符必须遵循标识符的规范
<1>. 标识符中可以含有字母、数字、_,但是不能使用数字开头,例子:a_1 _a1 _1a
<2>.标识符不能是Python中的关键字和保留字,也不建议使用Python中的函数名作为标识符,因为这样会导致函数被覆盖
<3>.命名规范:在Python中注意遵循两种命名规范:
① 下划线命名法
所有字母小写,单词之间使用_分割,Ex:max_length min_length hello_world xxx_yyy_zzz
② 帕斯卡命名法(大驼峰命名法)
首字母大写,每个单词开头字母大写,其余字母小写,Ex: MaxLength MinLength HelloWorld XxxYyyZzz
※如果使用不符合标准的标识符,将会报错 SyntaxError: invalid syntax

5.数据类型

在这里插入图片描述print

七种类型:int、String、bool、float、list、set、tuple
    a1=10    //整型
    print(“a1的值为:”+a1)
    print(a1,type(a1))//自动识别类型
    a2=1200000022232
    a3=12121_12121_21212  //整型,Python解释器会自动过滤特殊字符
    print(a3,type(a3))
    demo=1
    print(demo)      // bool默认值是true和false
    demo1 = True    //当bool的值为1的时候,返回值为true,bool类型可以参与整数类型的计算
    print(demo1,type(demo1))
    demo2 = False
    print(demo2,type(demo2))  //当bool的值为0的时候,返回值为False,bool类型可以参与整数类型的计算
    //浮点类型
    demo4 = 12.0
    demo4 = 12    //int和floot有什么关系?  int(长和短),在Python里面没有此说法
                 //有取值无穷大,所以floot类型取值和int一样,不会损失数据的精度
   (demo4,type(demo4))
※Python语言采用的是首行缩进的原理写代码
Python语言的代码特性:
  1. .采用代码所进的原理,默认缩进4个空格,可以利用Tab键或者空格键补全。

  2. Python语言的代码执行体,不在{}里面,而是在:之后写代码的执行体。

  3. Python语言里面执行代码的时候,不会按照从上到下的原理。

    demo3 = 100
    if  demo3>120:
    print(“demo的值很小!!”)
    else:
         print(“demo3的值很大!!”)
    

6.字符串

1. 字符串string(Java) ------str(Python)
2. 字符串的命名规则

<1>身份证号码?是什么类型 str 数字+X
<2>字符串里面可以有空格吗?
ex:wanghu jiangshi 备注:一个空格可以导致数据泄露,并且一个空格可以占用不明确的资源空间。
<3>字符串里面可以有空格吗? ex:wanghu “ ” jiangsh

3.空格 和 “ ” null 0 的区别?

① 空格和“ ”可以占用内存,但是不参与计算,不能使用。
②null是一个数据类型的默认值,它可以释放内存空间,不消耗内存空间,建议使用;
③0 指的是具体的资源内存,可以参与计算。

   demo5 = “abc”        
   demo6 = “wanghu   jiangshi”
   demo7 = “wanghu  “ ”  jiangshi”   
   print(demo5,type(demo5))
   print(demo6,type(demo6))
   print(demo7,type(demo7))
   demo8 = “abcdefg”
   demo9 = “HANCD”
   demo11 = 12
   demo10 = demo8 + demo9 + demo11    //Python语言也具有类型转换
   print(demo10,tyoe(demo10))
   b = “Hello  %s” %“孙悟空”    //  %    占位符     可以释放资源
   demo13 = “Hello  %2f” %  12.0
   print(b,type(b))
   print(demo13,type(demo13))   //Hello  12.000000   <class"str">
   demo16 = f(120)    //f是Python里面的关键字,不能作为变量、参数等使用。
   demo17= f'hello {a2} {b2}'   //格式化字符串,不建议使用,效率低
※Python 里面的{}大括号的说明
  1. { }里面存放变量的名称和变量值

  2. { }存放list 元祖 set集合 -----后面讲解

  3. { }表示一个方法体

  4. { }和 Java的 new、构造器一个功能

        name = ''
        print(f'欢迎{name} 光临!!)   //这种获取值很消耗资源     -----通过list
    
※None(空值)none表示不存在

*None不会占用内存,但是会让程序进行大量执行,产生代码的执行体

      demo15 = 100
      print(demo15,type(demo15))
      demo14 = None   //在python里面不要经常使用None、
      print(demo14,type(demo14))

Python语言的返回值都是通过type关键字操作 -----后续深入讲解type

※Python类型转换
类型转换四个函数 int()、float()、str()、bool()
    demo16 = True
    demo17 = int(demo16)
    print(demo17,type(demo17))
    demo18 = float(demo17)
    print(demo18,type(demo18))
    demo19 = str(“demo20”)
总结:Python里面没有强类型和弱类型
4.字符串的切片 : 通过下标有0开始获取str的片段

①切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
②切片的语法:[起始:结束:步长]

   demo21 = “abcdefghigk”
   print(demo21[1])  //b
   print(demo21[2])  //c
   print(demo21[4])  //e 
   print(demo21[1:2]) //b
   print(demo21[1:3])//bc
   print(demo21[1:4])//bcd
   print(demo21[1:-2])//bcdefghi
   print(demo21[1:-3])//bcdefgh
   print(demo21[1:1:1])//bcdefgh      步长为1
   list = {12,12,12,12,3232,34343}   //列表
   print(demo22[2:1:3])   //备注:多维列表
5.字符串操作
在python里面函数的关键字默认的找色功能是“红色”

1.字符串通过find函数可以指定的索引
2.如果是返回开始的索引值,否则是-1
3.字符串常用函数
①find函数:检测字符串是否包含指定字符,如果是返回开始的索引值,否则返回-1

  name = 'wanghubcd'
  print(name.find('w'))
  print(name.find('wd'))

②index函数:检测字符串是否包含指定字符,如果是返回开始的索引值,否则提示错误

  name1='abcdefg'
  print(name1.index('w'))  //index如果没有匹配的字符串,则报错误substring not found
  print(name1.index('ab'))
  print(name1.index('a'))
  //为什么要学习?通过index、find方法可以获取指定字符串位置的值(ex:后续可通过index、find截取、赋值、替换字符串的值)

③count函数:返回str1在string中指定索引范围内[start, end)出现的次数;count函数表示统计在str里面出现的次数多少。

   name2 = 'bookreadwhite'
   print(namae2.count('book'))  //1
   print('name2的值为:',name2.count('b'))
   print('name2的值为:',name2.count('o'))

④replace函数:将str1中的str1替换成str2,如果指定count,则不超过count次

  name3 = 'hello world chinese'
  print('name3的值为:',replace('wanghu'))
  name3 = ‘helloworldchinese’
  print('name3的值为',name3.replace('wanghu'))
  print('name3的值为:',name3.replace('wanghu','wqwq'))

⑤split函数:如果 maxsplit有指定值,则仅分割 maxsplit 个子字符串

  str1 = 'hello world hello china'
  print(str1.split(' '))    //不带参数的是直接分割
  print(str1.split(' ',2))   //2表示的按照数字分割
  //split不建议使用,因为split会占用内存空间,没有任何价值,优化内容

⑥capitalize函数:将字符串的首字母大写

  name4 = “abcdefef”
  print('name4的值为:',name4.capitalize())

⑦title函数:将字符串中每个单词的首字母大写

  str1 = 'hello world hello china'
  print(str1.title())    //title函数其实就是在将空格压缩,性能较可以

⑧startswith函数:检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False

   str1 = 'hello world hello china'
   print(str1.startswith('hello'))    //单词不可写错,顺序不可写错

⑨endswith函数:检查字符串是否是以 obj 结尾, 是则返回 True,否则返回 False

  str1 = 'hello world hello china'
  print(str1.endswith('china'))

⑩lower函数:将字符串转换为小写

⑪upper函数:将字符串转换为大写

⑫ljust ----- leftjust函数:返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串

  name5 = ''       guoyifan   hello   world'
  print(name5.ljust(50))

※ljust : 左对齐 特性:
1.利用空格填充内存,但是这个内存不是占用空间的!而是一个虚拟内存,和数据库View一样
2.可以利用ljust对一些没有作用的脏数据可以利用ljust排挤出内存。

⑬rjust函数:返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串

⑭center函数:返回一个原字符串居中,并使用空格填充至长度 width 的新字符串

⑮lstrip函数:去除字符串左边空白字符(rstrip、strip----右边、中间,与lstrip类似)

  str1 = ‘     hello’
  print(str1)
  print(str1.lstrip())    //  lstrlip  取消空白
  name6 = '    guoyifan   '
  print(name6.lstrip())  

6.一些知识点

※空格和空白的区别?

1.空白是基于python的首行缩进的语法而定,空白和空格本质是不一样的。
2.空白python解释器不解释,但是空格python解释器解释,浪费内存。

※键盘输入 input() 、后续:input还可以操作算法
  print('您好:请输入您的姓名:')
  name = input()
  print(name)
※扩展:函数的而调用机制

1.第一步:必须定义变量/常量
2.第二步:通过变量名称/常量名称/元祖名称/列表名称等调用函数。 ex:name.函数(参数1,参数2,。。。。。。参数N)
3.第三步:以上调用效率较高,这样调用python不会加载底层jar包。
4.总结:其实python的变量/常量就是一个对象
5.技巧:对象.函数名称();
对象.方法名称();
※python里面的面向对象的思想!

※python的新特性

1.python3.2以后不支持单一参数,因为单一参数不可以和变量属性进行赋值相匹配!
2.python里面支持常量的重新定义操作!

※python的大小写很敏感 -----为什么?

1.基于数据库的考虑,数据库规范,User_name\User_id uesr_id\user_age
2.通过capitalize()可以将数据库/不规范的表/代码进行调整,(python解释器去执行的时候去操作,而不是发生在表现层,在底层)
3.‘ ’单引号更加接近 二进制字节码,让python解释器更快、更加高效的执行,并且安全、数据更好维护

7.运算符

1.算术运算符

在这里插入图片描述

  a = 100   //int
  b = 200   //int
  d = 12.0
  c = a+b
  e = a+b+d
  print('a+b的值为:',c)
  print('a+b的值为:',type(c))
  print('a+b+d的值为:',e)
  print('a+b+d的值为:',type(e))
  f = a-b
  print(f)
※取余
 a1 = 100
 a2 = 0
 a3 = 100/a2
 print('a3的值为:',a3)   #ZeroDivisionError:division by zero     ----异常处理后面讲解
 a4 = a1/a5
 print('a4的值为:',type(a4))
 b1 = 12
 b2 = 5
 b3 = b1/b2
 b4 = b1%b2   //取模运算
 b5 = b1//b2
 b6 = b1**b2
 print('b3的值为:'b3’)
 print('b4的值为:'b4‘)
 print('b5的值为:'b5‘)
 print('b6的值为:'b6‘)    //幂次方
※不同类型加减乘除
  c1 = True
  c2 = 10
  c3 = c1+c2   //python计时器会自动匹配为True为1进行计算
  print('c2的值为:',c3)
  d1 = False
  d2 = 10
  d3 = d1+d2
  print('d3的值为:',d3)
2.赋值运算符

在这里插入图片描述

1.所有的赋值运算符都是基于 = 展开扩展
 e1 = True    
 e2 = 14
 e3 = 10000
 e4 = e1+e2*e3   //靠的是python解释器,python可以进行科学计算
 print('e4的值为:',e4)
 print('e4的值为:',type(e4))
 //bool类型进行运算的时候,结果为int
+= -= (一般用于循环里边,单个+=、-=不建议实现)ex:i+=1 ==== i=i+1
   f1 = 12
   f2+=10   //此写法需要先决条件    ex:循环语句  
  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值