7_16_中科实训day02

中科实训day02

1.注释

  • 单行注释 # 多行注释’’’ ‘’’ (三对单引号)

  • 注释的作用:增加程序的可读性,作为调试用,提高团队的合作效率

  • ctrl+/ 单行注释快捷键
    ctrl+d 复制本行(选择区域)

     """
     多行注释:一对 三个双引号(或者单引号)
     age = 30
     name = "小明"
     message = "haha"
     """
    

2.变量

  • Python是一门强类型语言
    Python底层自己会判断数据类型
    Python里面的变量必须赋值

    a=10   //Python底层
    print(a)
    b=12.0
    print(b,type(b))  // type是判断Python的数据类型
    //备注:在Python中定义变量必须赋值,否则会报异常
    

3.标识符

在Python中所有可以自主命名的内容都属于标识符,

变量名、函数名、类名

在这里插入图片描述


4.标识符命名规则

  • 只能包含字母、数字和下划线。变量名可以用字母或者下划线开头,不能以数字开头。

  • 不能包含空格,但可以使用下划线来分割其中的单词

  • 不能使用Python中的关键字作为变量名

  • 建议使用驼峰命名法

    驼峰命名法
    
    
       User_name = "李四"    大驼峰(帕斯卡命名法)
       user_Name = "张三"    小驼峰
    

5.数据类型

在这里插入图片描述

a1=10    //整型
print(“a1的值为:”+a1)
print(a1,type(a1))//自动识别类型
a2=1200000022232
a3=12121_12121_21212  //整型,Python解释器会自动过滤特殊字符
print(a3,type(a3))

#数据类型 int String bool float list set tuple

demo = 1;
print(demo)

#bool默认值是True和False
#当bool的值为1的时候,返回值为true,bool类型可以参与整数类型的计算

demo1 = True
print(demo1,type(demo1))
demo2 = False
print(demo2,type(demo2))

#Python语言采用首行缩进的原理写代码


6.python语言的代码特性

  1. 采用代码缩进的原理,默认缩进四个空格,可以利用Tab键或空格键补全

  2. Python语言代码的执行体,不在()里面,而是在:之后的执行体

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

    demo3 = 100
       if  demo3>120:
            print(“demo的值很小!!”)
        else:
             print(“demo3的值很大!!”)
       //浮点类型
       demo4 = 12.0
       demo4 = 12    //int和floot有什么关系?  int(长和短),在Python里面没有此说法
                     //有取值无穷大,所以floot类型取值和int一样,不会损失数据的精度
       print(demo4,type(demo4))
    

7.字符串

  1. 字符串string(Java) ------str(Python)

  2. 字符串的命名规则
    (1)身份证号码?是什么类型 str 数字+X
    (2)字符串里面可以有空格吗? ex:wanghu jiangshi //备注:一个空格可以导致数据泄露,并且一个空格可以占用不明确的资源空间。
    (3)字符串里面可以有空格吗? ex:wanghu “ ” jiangsh
    //空格 和 “ ” 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">
            emo16 = 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表示不存在
    

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

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

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

8.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里面没有强类型和弱类型

9.字符串的切片 : 通过下标有0开始获取str的片段

  • 切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。

  • 切片的语法:[起始:结束:步长]

    name = 'abcdef'
    print(name[0:3]) # 取 下标0~2 的字符
    结果:abc
    
    
    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])   //备注:多维列表 
    

多行注释 编码可读性

10.字符串常用函数

  1. find 检测字符串是否包含指定字符,如果是返回开始的索引值,否则返回-1

    str1 = 'hello world'
    print(str1.find('lo'))
    
  2. index 检测字符串是否包含指定字符,如果是返回开始的索引值,否则提示错误

     str1 = 'hello world'
     print(str1.index('lo'))
    
  3. count返回str1在string中指定索引范围内[start,
    end)出现的次数

    str1 = 'hello world'
    print(str1.count('lo'))
    print(str1.count('lo',5,len(str11)))
    
  4. replace 将str1中的str1替换成str2,如果指定count,则不超过count次

    str1= 'hello world hello china'
    print(str1.replace('hello','HELLO'))
    print(str1.replace('hello','HELLO',1))
    
  5. split (不建议使用,因为split会占用内存空间,没有任何价值,优化内容)

     str1 = 'hello world hello china'
     print(str1.split(' '))
     print(str1.split(' ',2))
    
  6. capitalize 将字符串的首字母大写

     str1 = 'hello world hello china'
     print(str1.capitalize())
    
  7. title 将字符串中的每个单词的首字母大写

    str1 = 'hello world hello china'
    print(str1.title())
    
  8. startswith 检查字符串是否是以 obj (某一字符串)开头, 是则返回 True,否则返回 False

    str1 = 'hello world hello china'
    print(str1.startswith('hello'))
    
  9. endswith 检查字符串是否是以 obj (某一字符串)结尾, 是则返回 True,否则返回 False

    str1 = 'hello world hello china'
    print(str1.endswith(‘china'))
    
  10. lower 将字符串转换成小写

     str1 = 'Hello World HELLO CHINA'
     print(str1.lower())
    
  11. upper 将字符串转换为大写

    str1 = 'hello world hello china'
    print(str1.upper())
    
  12. ljust 返回一个原字符串左对齐,并使用空格填充至长度width的新字符串

    str1 = 'hello'
    print(str1.ljust(10))
    
  13. rjust 返回一个原字符串右对齐,并使用空格填充至长度width的新字符串

    str1 = 'hello'
    print(str1.rjust(10))
    
  14. center 返回一个原字符串居中,并使用空格填充至长度width的新字符串

    str1 = 'hello'
    print(str1.center(15))
    
  15. lstrip 去除字符串左边空白字符

    str1 = '     hello'
    print(str1)
    print(str1.lstr1ip())
    
  16. rstrip 去除字符串右边空白字符

     str1 = 'hello     '
     print(str1)
     print(str1.lstr1ip())
    
  17. strip 去除字符串两边空白字符

    str1 = '     hello     '
    print(str1)
     print(str1.lstr1ip())
    
  18. partition 可以将字符串以str1进行分隔成三个部分 str1前,str1,str1后

      str1 = 'hello world hello china'
      print(str1.partition('world'))
    
  19. join str1 中每个字符后面插入str1,构造出一个新的字符串

      str1 = '_'
      list = ['hello','world','hello','china']
      print(str1.join(list)) 
    
  20. isspace 如果 str1 中只包含空格,则返回 True,否则返回 False.

    str1 = ' '
    print(str1.isspace())
    
  21. isalnum 如果 str1 所有字符都是字母或数字则返回 True,否则返回 False

    str1 = 'a123'
    print(str1.isalnum())
    
  22. isdigit 如果 str1 只包含数字则返回 True 否则返回 False

    str1 = '123'
    print(str1.isdigit())
    
  23. isalpha 如果 str1 所有字符都是字母 则返回 True,否则返回 False

    str1 = ‘abc'
    print(str1.isalpha())
    
空格和空白的区别?
  1. 空白是Python的首行缩进的语法而定,空白的空格本质是不一样的
  2. 空白Python解释器不解释,但是空格解释器结实,浪费内存

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

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

函数调用机制
  1. 第一步:必须定义变量/常量
  2. 第二步:通过变量名称/常量名称/元祖名称/列表名称调用函数
  3. 第三步:以上调用效率?较高。这样调用Python不会加载底层jar包

总结:其实Python的变量/常量就是一个对象

**技巧:对象.函数名称();
             对象.方法名称();
             Python里的面向对象的思想!**

Python的新特性(基于算法)
  1. Python3.2以后不支持单一参数,因为单一参数不可以和变量属性进行赋值向匹配
  2. Python里面支持常量的重新定义操作
键盘输入 input() 后续:input还可以继续操作算法

11.运算符

  1. 算数运算符
    以下假设变量a=10,变量b=20
    在这里插入图片描述
  2. 赋值运算符
    在这里插入图片描述
  3. 比较运算符
    在这里插入图片描述
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狐 若

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值