python课外笔记

1.print函数

  1. print("helloworld")其实系统默认隐藏了一个参数end,完整的print()语句是
print("helloworld",end="\n")
#所以print语句打印会自动换行,如果想让其不换行打印,我们把end参数的`\n`去掉即可。
  1. print(a,b)实际含义是不换行分别打印print(a)和print(b)

  2. 一次性打印多个值

    print("tom","jerry","alice","tom")
    #打印结果:
    tom jerry alice tom
    • 打印的内容直接默认是用空格连接,如果我们想打印的内容之间使用其它连接符连接可以使用分割符sep参数,如果使用==连接,就可以这样写:

      • print("tom","jerry","alice","tom",sep="==")
        #打印结果是:
        tom==jerry==alice==tom
      • 这样就可以在所有的元素之间加上你想要的分隔符

2.Input输入

  • 所有输入的字符,都会被系统当做字符串

    题目:输入两个数,求两个数之和:

    • # 方法一
      num01 = input("请输入第一个数:")
      num02 = input("请输入第二个数:")
      print("两个数之和等于:{:d}".format(int(num01)+int(num02)))
      # 方法二
      num01,num02 = eval(input("请输入两个数,以逗号分割:"))
      print("%d + %d = %d" % (num01,num02,num01+num02))
    • 这里的eval函数的特点:

      a. 只能一次输入多个整数,不能是字符串

      b. 输入后自动转化为int类型

3.数据类型

  1. 数据类型转换

    • 把整数x转化为字符:chr(x)

      把一个字符串转化为它的整数值:ord(x)

      将一个整数转化为十六进制字符串:hex(x)

      将一个整数转化为八进制字符串:oct(x)

      将一个整数转化为二进制字符串:bin(x)
  2. 如何获取变量的数据类型?如何判断变量是不是属于一个数据类型?

    • 可以通过type(变量名)就可以知道变量的数据类型;

      可以使用isinstance方法,isinstance(变量名,(数据类型))

      • if isinstance(str01,(str)):
        print("字符型")
  3. 数值类型

    1. 如何查看变量占用多少内存空间?

      要导入模块sys,调用方法`sys.getsizeof(变量名

      import sys
      num01=100
      print('num01占用的内存空间:',sys.getsizeof(num01))
    2. 八进制0o开头,十六进制0x开头

    3. 整形数值常见方法:

      • abs() 绝对值
      • math.fabs() 绝对值
      • math.sqrt() 平方根
      • math.pow(a,b) a的b次方
      • max() 返回最大值
      • min() 返回最小值
    4. 获取整数位,保留指定位数有效数字

      • round方法:
      print(round(12.3456)) ##输出结果只会打印12
      print(round(12.3456,2)) ###输出结果为12.35。round(数值,整数)括号里的整数意思是小数点后保留几位数且四舍五入,如果是2就保留两位数
      • 使用math.ceil()方法,返回数字向上取整

        使用math.floor()方法,返回数字的向下取整

        使用modf()方法,返回两个数值,前一个数是小数部分、后一个个数是整数部分;

      • print(modf(12.2345)) ##输出结果:(0.2345 12.0)

4.符串类型

  1. 表示方法

    字符串数据类型使用单引号双引号都可以;

  2. 长字符串的表示方法

    • 使用续航符
    str03="hello nice to meet you"\
    "my name is xiaohua"
    • 使用三个双引号或者三个单引号

      str04='''hello nice to meet you
      my name is xiaohua
      '''

      使用三个单引号或者双引号可以保留原长字符串的长文本排版格式

  3. 转义字符和取消转义

    打印字符串的时候使用斜杠加字母表示一个特殊的功能

    \t 表示横向制表符

    \n 表示回车换行

    \"表示打印双引号"

    \\表示打印反斜杠\

    对于某些特殊的符号,使用取消专业字符来表示特符号本身,将其打印出来,在要打印的字符串引号前加一个字符r表示要打印的字符串不具备转义的功能

    print('\\') #打印出的结果只有一个\
    print(r'\\') #这样就可以原封不动的打印出\\

5.格式化输出

  1. 百分号形式格式化输出

    • 整数格式化输出占位符

      • %d 十进制输出

      • %o 八进制输出

      • %x 十六进制输出

        注意:数值源与输出内容之间没有逗号分隔,这里容易与C语言或者Java混淆

        让十进制数100,以八进制输出:

        num=100
        print('十进制100的八进制数值为%o'%num)
        #返回值为:144

        如果一次输出多个进制转化:

        num01,num02 = 100,200
        print("八进制输出为:0o%o,0o%o"%(num01,num02))#返回值为:八进制输出为:0o144,0o310
        print("十六进制输出为:0x%x,0x%x"%(num01,num02))#十六进制输出为:0x64,0xc8

        如果让一个数二进制形式输出,可以直接使用bin()方法;

        num=6
        print("二进制输出为:",bin(num))
        #返回值为二进制输出为: 0b110
    • 浮点数格式化输出

      • 保留小数点后面六位有效数字%f

      • 保留小数点后面2位有效数字%.2f

      • 小数点后保留6位有效数字的科学计数法计数%e

      • 小数点后保留2位有效数字的科学计数法计数%.2e

      • 6位数能表示就用6位数,6位数表示不了就用科学计数法%g

      • 保留2位有效数字,2位有效数字表示不了就用科学计数法%.2g

      • #浮点数格式化输出
        num01=123.78912
        print("标准的模式:%f"%num01)
        print("保留小哦奥数点后两位数有效数字:%.2f"%num01)
        print("e标准的模式:%e"%num01)
        print("科学计数法保留小数点后两位数字模式:%.2e"%num01)
        print("g标准模式:%g"%num01)
        print("g标准模式:%.2g"%num01")
        #打印结果
        标准的模式:123.789120
        保留小数点后两位数有效数字:123.79
        e标准的模式:1.237891e+02
        科学计数法保留小数点后两位数字模式:1.24e+02
        g标准模式:123.789
        g标准模式:1.2e+02
    • 字符串的格式化输出

      • 标准输出%s

        右对齐,占位符10位%10s

        左对齐,占位符10位%-10s

        截取3位字符串%.3s

        右对齐10位占位符,截取两位字符串%10.2s

      • #字符串格式化输出
        str01="www.python123.com"
        print("s标准输出:%s"%str01)
        print("s固定长度固定空间中输出:%-20s"%str01)
        print("s截取:%.3s"%str01)
        print("s对齐10位占位符,截取两位字符串:%10.2s"%str01)
        #打印结果
        s标准输出:www.python123.com
        s固定长度固定空间中输出:www.python123.com
        s截取:www
        s对齐10位占位符,截取两位字符串: ww
  2. format形式格式化输出

    1. 相对于基本格式化输出采用的%的方法,format()功能更加强大,该函数模块把字符串当成一个模板,通过传入参数进行格式化,并且使用大括号{}作为特殊字符代替%

      name = "Ailice"
      gender = "男“
      age = 23
      print("姓名:%s 性别:%s 年龄:%d"%(name,gender,age))
      print("姓名:{} 性别:{} 年龄:{}".format(name,gender,age))
    2. 还可以在括号里加标识符,后面要用的时候,就不需要在format函数里添加参数了,可以直接用

      print("姓名:{0} 性别:{1} 年龄:{2} 学生姓名{0}".format(name,gender,age))
    3. 标识符除了可以使用数字也可以直接用关键字

      print("姓名:{name} 性别:{gender} 姓名:{name}".format(name = name,gender = gender))
    4. Format的进阶用法

      forma占位符{}里面使用:对齐方向 占位长度

      <默认左对齐,>右对齐,^中间对齐,

      print("姓名:{:<10}".format(name))
      print("姓名:{:>10}".format(name))
      print("姓名:{:^10}".format(name))

      除了对齐之外还可以使用取位数:{:4s}{:.2f}

      print("{:10.2f}".format(3.14159)) #十位占位长度,小数点后保留两位有效数字
      print("{:>10.2f}".format(3.14159)) #十位占位长度,小数点后保留两位有效数字,右对齐

python基础知识扩展(一)的更多相关文章

  1. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  2. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  3. python基础知识(二)

    以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍

  4. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  5. python基础知识讲解——@classmethod和@staticmethod的作用

    python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...

  6. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

  7. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  8. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  9. Python基础知识(五)

    # -*- coding: utf-8 -*-# @Time : 2018-12-25 19:31# @Author : 三斤春药# @Email : zhou_wanchun@qq.com# @Fi ...

随机推荐

  1. 深入理解Mybatis(第一讲)——手写ORM框架(简易版Mybatis)

    我们来自定义一个持久层框架,也就是Mybatis的简易版. 使用端的搭建 idea中新建maven工程IPersistence_test: 在resources目录下新建sqlMapConfig.xm ...

  2. Rocket - debug - DebugCustomXbar再讨论

    https://mp.weixin.qq.com/s/YPFa6kE6I_Ud_MJGvzmS-g 简单讨论输入边/输出边Bundle的方向. 1. 上游节点的地址不重复 仔细看了一下sourceFn ...

  3. A barrier for Mobile Forensics - Samsung Secure Folder

    Since I mentioned about "Second Space", let's take a look at Samsung "Secure Folder&q ...

  4. call 和 apply 的区别?哪个性能更好?

    1.call 和 apply 都是 function 类 原型上的方法:每一个函数作为 function 的实例都能调用这两个方法:这两个方法执行的目的都是用来改变函数中 this 指向的,让函数执行 ...

  5. ASP.NET使用HttpHandler进行页面静态化(自动生成页面)

    这次的Demo是,一个根页面,点击链接创建子页面,子页面都是一个Template页面进行替换的 一个根页面 <%@ Page Language="C#" AutoEventW ...

  6. Java实现 LeetCode 629 K个逆序对数组(动态规划+数学)

    629. K个逆序对数组 给出两个整数 n 和 k,找出所有包含从 1 到 n 的数字,且恰好拥有 k 个逆序对的不同的数组的个数. 逆序对的定义如下:对于数组的第i个和第 j个元素,如果满i < ...

  7. Java实现 蓝桥杯VIP 算法训练 成绩的等级输出

    输入一个百分制的成绩t后,按下式输出它的等级.等级为:90100为A,8089为B,7079为C,6069为D,0~59为E. 样例输入 98 样例输出 A import java.util.Scan ...

  8. Java实现蓝桥杯模拟带九9的数的个数

    问题描述 在1至2019中,有多少个数的数位中包含数字9? 注意,有的数中的数位中包含多个9,这个数只算一次.例如,1999这个数包含数字9,在计算只是算一个数. 答案提交 这是一道结果填空的题,你只 ...

  9. Java实现汉诺塔问题

    1 问题描述 Simulate the movement of the Towers of Hanoi Puzzle; Bonus is possible for using animation. e ...

  10. Docker安装及阿里云镜像加速器配置

    Docker安装 Windows系统安装就不用说了,因为Docker是开源的,所以,直接去官网:https://www.docker.com/下载安装包安装就行了 其实,Linux系统安装也很简单,照 ...