Python 学习随笔 - 1 - 基础数据类型、变量 及 基本运算
仅有的C语言的基础都是大学时学的;
准备赶潮流,开始学习Python。
随笔记录学习过程中,靠一点点C语言基础难以去理解的地方,以及区别于C语言的地方,做些笔记作为以后参考。
Python 解释器直接可以处理的基础数据类型: 字符串、整数、浮点数、布尔值、空值
1、整数
Python可以处理任意大小的整数,包括负整数;(默认为10进制); 直接以数学形式描述即可。
如果需要定义为16进制,则需要加前缀 0x 例如: 0xff , 0x1234abc
2、浮点数
即带小数点的小数,可以通过科学记数法来移动小数点的位置,所以称之为浮点数;
例如: 12.34567 就等同于 1.234567e1
3、字符串
可以是单引号或者双引号,例如: 'ABC' "ABC" 是等同的;
如果字符串中有单引号,则可以用双引号,例如; “I'm here”
如果字符串既有单引号又有双引号,则需要转义符号 \ (如果字符串中包含 \ 则也需要加 \ 来转义,即 \\ )
如果字符串中有大量需要转义的符号,则可以通过字符串前面加 r 来解决;(等同于C语言中字符串前面加@)
字符串中可包含一些 回车换行、制表符等特殊字符 ( \n \t )
4、布尔值
True 、False (注意大小写)
5、空值
None
变量: 与C语言不同的是,Python变量本身类型不固定,而C语言中一个变量在其作用域内是不可以变化本身类型的;
变量名必须是大小写英文、数字和_的组合,且不能用数字开头;
可以以下随意定义:
a=1
print(a)
a='ABC'
print(a)
基本运算
1、整数间运算: + - * /
特殊说明: 除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数;
// 为取商
% 为取余
例如: 10/2 结果为 5.0
10/3 结果为 3.333333333335
10//3 结果为 3
10%3 结果为 1
2、
3、字符串 特殊运算及处理
用+号连接,用*号重复;例如:'A' + 'B' 或者 'A'*5
切片操作 类似于C语言中的substring , 第一个下标为0 和C语言一样 (切片操作与list的切片操作一样)
例如: A = 'Hello World!'
A[4] 结果为 'o' 第5个字符
A[0:4] 结果为'Hell' 从0开始截取4个字符 可略写为 A[:4]
A[2:4] 结果为 ‘ll’ 从第3个字符开始截取2个字符(即 后值 减 前值 的 差)
A[2:] 结果为 ‘llo World!’ 从第3个字符开始截取后面所有字符
可以通过负数下标来从右向左切片;
A[-4] 结果为 ‘r’ 倒数第4个字符
A[-4:] 结果为 ‘rld!’ 截取倒数4个字符
A[:-4] 结果为 ‘Hello Wo’ 除了倒数4个字符,截取前面所有字符
字符串常用操作:
字符串长度:len(str)
全部大写:str.upper()
全部小写:str.lower()
大小写互换:str.swapcase()
首字母大写,其余小写:str.capitalize()
首字母大写:str.title()
获取固定长度,右对齐,左边不够用空格补齐:str.ljust(width)
获取固定长度,左对齐,右边不够用空格补齐:str.rjust(width)
获取固定长度,中间对齐,两边不够用空格补齐:str.center(width)
获取固定长度,右对齐,左边不足用0补齐:str.zfill(width)
获取其中某个字符或子字符串出现的次数:str.count(substr)
字符串内部查找
1、find方法 str1.find(str2, beg=0, end=len(str1))
2、index方法 str1.index(str2, beg=0, end=len(str1))
检测 str2 是否包含在字符串str1中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1 (find方法)或者 ValueError: substring not found 异常 (index方法)
字符串替换
标准语法: str.replace(old,new[,count=str.count(old)])
- old -- 指定的旧子字符串
- new -- 指定的新子字符串
- count -- 可选参数,替换的次数,默认为指定的旧子字符串在字符串中出现的总次数。
字符串去除空格或特定字符
标准语法: str.strip([chars]) 用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
去两边空格:str.strip() 去左空格:str.lstrip() 去右空格:str.rstrip()
注:是去除字符序列中的所有存在的字符;例如:str.strip('123') 是把字符串的前后出现的 ‘1’ ‘2’ ‘3’ 都去除;
字符串分割
标准语法: S.split(str="", num=S.count(str))
- str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
- num -- 分割次数。默认为 -1, 即分隔所有。
字符串判断
是否以start开头:str.startswith('start')
是否以end结尾:str.endswith('end')
是否全为字母或数字:str.isalnum()
是否全字母:str.isalpha()
是否全数字:str.isdigit()
是否全小写:str.islower()
是否全大写:str.isupper()
Python 学习随笔 - 1 - 基础数据类型、变量 及 基本运算的更多相关文章
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- python学习日记(基础数据类型及其方法02)
python的变量 python中的变量不需要声明,变量载使用前必须被赋值,变量被赋值以后才会被创建. 在python中变量就是变量,没有数据类型.我们所说的类型是变量所指向内存中的对象的类型. py ...
- 记录我的 python 学习历程-Day07 基础数据类型进阶 / 数据类型之间的转换 / 基础数据类型总结 / 编码的进阶
基础数据类型 str(字符串) str:补充方法练习一遍就行 s.capitalize() 首字母大写,其余变小写 s = 'dyLAn' print(s.capitalize()) # Dylan ...
- python学习笔记02 --------------基础数据类型
python的基本数据类型: 1.基本数据 1.1. 数字类型 1.1.1 整数 int int() #将括号内内容转化为整数类型. 1.1.2 浮点数 float 1.1.3 复 ...
- Python学习day11-函数基础(1)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习课程零基础学Python
python学习课程,零基础Python初学者应该怎么去学习Python语言编程?python学习路线这里了解一下吧.想python学习课程?学习路线网免费下载海量python教程,上班族也能在家自学 ...
- Python学习笔记之基础篇(-)python介绍与安装
Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...
- Python学习day16-模块基础
<!doctype html>day16 - 博客 figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { ...
- Python学习day12-函数基础(2)
<!doctype html>day12博客 figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { pos ...
随机推荐
- 0.b概述
一.计算机与算法 计算 = 信息处理 计算模型 = 计算机 = 信息处理工具 算法:特定计算模型下,解决特定问题的指令序列 要素:输入 输出 正确性 确定性 可行性 有穷性 好算法:正确 健壮 可读 ...
- ftl 列表弄成js数组
例子:ftl 列表:bannerViewUrls var arrayBanner=[<#list bannerViewUrls as list>"${list}"< ...
- Java 之 字符缓冲流
一.字符缓冲输出流 java.io.BufferedWriter extends Writer BufferedWriter:字符缓冲输出流. 继承自父类的共性成员方法: void write(int ...
- Python 自己实现可迭代对象
import time from collections import Iterable from collections import Iterator class Classmate(object ...
- [LeetCode] 671. 二叉树中第二小的节点 ☆(递归 合并)
描述 给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0.如果一个节点有两个子节点的话,那么这个节点的值不大于它的子节点的值. 给出这样的一个二叉树,你需要输出所有 ...
- jenkins+docker+git+harbor构建及代码回滚(未完)
目录 一.部署 环境工作流程介绍 部署harbor 一.部署 前提环境说明 192.168.111.3 该机器为git本地仓库,及git远程仓库(git用户创建),及Harbor镜像仓库 192.16 ...
- 前端HTML基础和head部分
一.SOCKET服务器与浏览器交互 CS模式 --> BS模式 CS模式逐渐向BS模式转移,底层都是socket客户端 浏览器给服务器发送请求 --> 服务器收到请求 --> 服务 ...
- 快上车,react 入门拾遗
最近朋友圈和微博都刷了一波杰伦的回忆杀–说好不哭,想想都9012了,在学习react如火如荼的路上,也不妨停下脚步来总结总结,朝花夕拾一下. 为了便于阐述,我们还是来段小明和禅师的故事吧. 小明在学习 ...
- php各种框架的区别
一.CI框架 CI框架是一个简单快速的PHP MVC轻量级框架,它执行效率高,快速简洁,代码量少,适合中小型项目开发,也可以做大型项目,但扩展能力不是很好,Ci支持的url模式默认为pathinfo形 ...
- Java对象内存分配原理与布局
当一个对象被创建了,那在JVM中是如何的从一个对象不存在到存到,然后将对象存放在什么地方呢?这次主要来探讨一下Java对象创建的过程. new关键字创建对象的3个步骤: 1.在堆内存中创建出对象的实例 ...