【Python学习】Python基础

一、Python语法特点

  • 注释
  1. 单行注释:#开头,注释快捷键ctrl+/

    # 注释
    
  2. 多行注释:’’‘注释’’'或""“注释”""

    '''
        第一种多行注释
    '''
    
    """
        第二种多行注释
    """
    
  • 缩进:必须为四个空格,可以用tab

    if 1:
        print('hello world!')
    

二、保留字和标识符

  • Python不区分保留字和关键字

    # 输出所有保留字
    import keyword
    print(keyword.kwlist)
    
  • 标识符

  1. 定义:有特殊要求的字符串,标识符一定是字符串,但字符串不一定是标识符
  2. 组成:以字母、数字、下划线组成,必须以字母或者下划线开头,并且不能是关键字或保留字
  3. 作用:给变量、常量、函数、类等起名字用的
  4. 注意:Python中的下划线有特殊含义

三、常量和变量

  • 常量
  1. 值在程序运行过程中不发生改变

  2. Python中常量一般用大写表示

    # 代码需要使用英文输入法
    PI = 3.1415926
    
  • 变量
  1. 不用事先声明变量名和类型,直接赋值则默认创建:变量名 = 值

  2. 变量名要有意义

    # 数字变量
    age = 18
    # 字符串
    des = 'hello word!'
    # 使用变量
    print(age, des)
    
  • 格式化输出

    age = 18
    print('age = %d' % age)
    
    age = 18
    des = 'sunck is a good man'
    print('sunck is a %s man ,he is %d years old' % ('nice', age))
    

四、基本数据类型

  • 数字类型

    # 整数
    num1 = 1
    num2 = 2
    num3 = 3
    # 不建议使用以下定义
    num4, num5, num6 = 4, 5, 6
    print(num1, num2, num3)
    print(num4, num5, num6)
    # 占两位,右对齐
    print('%2d' % 9)
    # 占两位,左对齐
    print('%-2d' % 9)
    # 占两位,右对齐,自动补0
    print('%.2d' % 9)
    
    # 浮点数
    num7 = 1.1
    num8 = 2.2
    print(num7 + num8)
    # 保留两位小数
    print('num7 + num8 = %.2f' % (num7 + num8))
    
  • 字符串(Python没有字符的概念,因此不区分单引号和双引号)

    # 注意字符串本身是无法改变的
    str1 = 'sunck is a good man'
    
    str2 = "sunck is a good man"
    
    str3 = '''sunck 
    is 
    a 
    good 
    man'''
    
    1. 转义字符

      str7 = 'sunck is a good man! \\nsap'
      str8 = 'sunck is a \'good\' man'
      print(str8)
      
    2. 字符串索引

      # 获取字符串元素
      str1 = 'sunck is a good man'
      print(str1[1])
      
      # 切片,包含开始,不包含结束
      print(str1[3:6])
      
      # 倒着数下标
      print(str1[-1])
      
    3. 字符串常用方法

      insex()find()方法的区别:如果查找结果没有,用index会报错,find会返回-1

      # 将字符串转为大写
      str1 = 'sunck is a good man'
      str2 = str1.upper()
      print(str1, str2)
      
      # 将字符串转为小写
      str1 = 'sunCk is a goOd maN'
      str2 = str1.lower()
      print(str1, str2)
      
      # 将字符串首字母大写,其他小写
      str1 = 'sunCk is a goOd maN'
      str2 = str1.capitalize()
      print(str1, str2)
      
      # 将字符串每个单词首字母大写
      str1 = 'sunCk is a goOd maN'
      str2 = str1.title()
      print(str1, str2)
      
      # 输出字符串长度
      print(len(str1))
      
      # 去掉字符串前后字符,默认为空白
      str3 = '   sunck is a good man   '
      print(str3)
      print(str3.strip())
      
      # 去掉字符串前后指定字符
      str3 = '###sunck is a good man###'
      print(str3)
      print(str3.strip('#'))
      
      # 字符串替换,默认全部替换,可根据需求规定替换次数
      str4 = 'sunck is a good good man'
      print(str4)
      print(str4.replace('good', 'nice', 1))
      
      # 从左至右获取第一次出现的字符串的下标
      str5 = 'sunck is a good man'
      print(str5.find('good'))
      print(str5.rfind('good'))
      print(str5.index('good'))
      print(str5.rindex('good'))
      
      # 字符串切割,默认以空白切割,自动省略左右空白
      str6 = 'sunck is a good man'
      print(str6.split())
      
      # 字符串切割,以指定字符切割
      str6 = 'sunck#is#a#good man'
      print(str6.split('#'))
      
      # 以指定字符串进行组合
      li = ['sunck', ' is', ' a', ' good', ' man']
      print(''.join(li))
      
      
  • bool类型

    bool就两个值,即TrueFalse,注意:不要把TrueFalse当作10来用

  • 类型转换

    # type,查看类型
    num1 = 1
    num2 = 1.1
    print(type(num2))
    
    # 整数 --> 浮点
    num = 1
    f = float(num)
    print(type(f), f, type(num), num)
    # 整数 --> 字符串
    num = 123
    s = str(num)
    print(type(s), s, type(num), num)
    # 整数 --> 布尔
    num = 123
    b = bool(num)
    print(type(b), b, type(num), num)
    
    # 字符串 --> 整数,注意:使用int()当字符串中间存在非数字字符会转换失败报错,加减号在开头做一元运算符不会报错
    print(eval('12+4'))
    # print(int('12+4')) 报错
    
    # 字符串 --> 浮点
    # 字符串 --> 布尔
    
    # 浮点 --> 整数
    # 浮点 --> 字符串
    # 浮点 --> 布尔
    
    # 布尔 --> 整数 不建议用
    # 布尔 --> 浮点 不建议用
    
    # 布尔 --> 字符串
    

五、运算符

  1. 算数运算符
  2. 比较运算符
  3. 逻辑运算符
# 除运算
print(5 / 2)
# 取整数
print(5 // 2)
# 模运算,取余数
print(5 % 2)

# 左移右移运算
print(1 << 2)
print(1 >> 2)

# 复合运算符 a += b 即 a = a + b,其他同理
a = 1
b = 2
a += b
print(a)

# 比较运算符
print(a > b)
print(a < b)
print(a == b)
print(a != b)

# 逻辑运算符 与and、或or、非not
'''
表达式1 and 表达式2
值:
    表达式1为真,表达式2为真,逻辑与运算表达式的值为真
    表达式1为真,表达式2为假,逻辑与运算表达式的值为假
    表达式1为假,表达式2为真,逻辑与运算表达式的值为假
    表达式1为假,表达式2为假,逻辑与运算表达式的值为假
'''
print(1 and 2)
print(0 and 2)

'''
表达式1 or 表达式2
值:
    表达式1为真,表达式2为真,逻辑或运算表达式的值为真
    表达式1为真,表达式2为假,逻辑或运算表达式的值为真
    表达式1为假,表达式2为真,逻辑或运算表达式的值为真
    表达式1为假,表达式2为假,逻辑或运算表达式的值为假
'''
print(1 or 2)
print(0 or 2)

'''
not 表达式
值:
    表达式为真,逻辑非运算表达式的值为假
    表达式为假,逻辑非运算表达式的值为真
'''
print(not 1)
print(not 0)
发布了30 篇原创文章 · 获赞 30 · 访问量 799

猜你喜欢

转载自blog.csdn.net/qq_40947493/article/details/102553847