本节主要内容:

一. python基本数据类型有哪些?

1. int  ==>  整数.主要用来进行数学计算.

2. str ==> 字符串,可以保存少量数据并进行相应的操作

3. bool==>判断真假, True, Fals

4. list==> 存储大量数据.用[ ]表示

5. tuple=> 元组, 不可以发生改变 用( )表示

6. dict==> 字典, 保存键值对, 一样可以保存大量数据  {} 查找比较快.   key:value,一次存两个数据,一对一对存.

7.  set==> 集合, 保存大量数据.  不可以重复. 其实就是不保存value的dict    只存key  比较少见

二. 整数 (int)

整数可以进行的操作:        bit_length(). 计算整数在内存中占用的二进制码的长度

a =    #    (不要和编码混一起)
print (a.bit_length())   # 求的有效长度
a =    #
print(a.bit_length())   

三.布尔值 (bool)

数字转换成 bool

如果数字是0  结果是假(False)

如果数字是非0  结果是真 (True)

True 和 1 的效率问题,  1 的效率高.

取值  只有 True, False.     bool值没有操作的.

转换问题:

str  => int               int(str)

int   => str              str(int)

int   => bool            bool(int).    0是False    非0是True

bool => int             int(bool)

str => bool             bool(str)  空字符串是False, 不空是True

bool => str             str(bool)   把bool值 转换成相应的"值"

# True  =>   int  =>  1

# False =>  int  => 0

比如:
 print(

四.  字符串(str)

把字符连成串. 在python中用', ", ''', """引起来的内容被称为字符串.

空字符串是 False      非空字符串是  True suoyin

4.1  切片和索引

1. 索引: 字符串中的第几个字符      必须用[]

索引语法     字符串[索引] 索引从 0 开始

#
s1 = "python牛B"
print(s1[])    # 获取第0个
print(s1[])
print(s1[])
print(s1[])
print(s1[])
print(s1[])
print(s1[])
print(s1[])
print(s1[])
# print(s1[])    # 没有9, 越界了. 会报错
print(s1[-])   # - 表示倒数.
print(s1[-])   # 倒数第二个

2.切片

切片,顾头不顾腚,前面切得到 后面切不到.

语法:

str[start:end:step]

start :  从xxx开始

end :   切到xxx为止

step:   步长

步长: 如果是整数,则从左往右取, 如果是负数,则从右往左取,默认是1

s2 = "python最牛B"
print(s2[:])  # 从0获取到3. 不包含3. 结果: pyt
print(s2[:])  # 结果
print(s2[:])  # 大是8. 但根据顾头不顾腚, 想要取到8必须给9
print(s2[:])  # 如果右边已经过了大值. 相当于获取到后
print(s2[:])   # 如果想获取到后. 那么后一个值可以不给.
print(s2[-:-])    # 从- 获取到 - 这样是获取不到任何结果的. 从-1向右数. 你怎么数也数不到-
print(s2[-:-])    # 牛b, 取到数据了. 但是. 顾头不顾腚. 怎么取后一个呢?
print(s2[-:])  # 什么都不写切到最后
print(s2[:-])  # 这个是取到倒数第一个
print(s2[:])    # 全部切出来

跳着切

# 跳着取, 步长
print(s2[::])    # 从第一个开始取, 取到第5个,每2个取1个, 结果: yh, 分析: :=> ytho => yh
print(s2[::])     # 从头开始到第五个. 每两个取一个
print(s2[::])     # 从4开始取到后. 每两个取一个
print(s2[-::])    # 从-5取到后.每两个取一个
print(s2[-:-])    # -:-5什么都没有. 因为是从左往右获取的.
print(s2[-:-:-])  # 步长是-. 这时就从右往左取值了
print(s2[-::-])   # 从倒数第5个开始. 到开始. 每3个取一个, 结果oy
例子2
s="abcdefghijklmn"
print(s[::])  # 每两个切一个   得出 aceg
print(s[::])  #  be
print(s[-:-])  #倒数也可以跳着切    得出  ghijkl
print(s[::-])   #反着切 

3.字符串相关操作方法

切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的

① 大小写转换

.capitalize()     #首字母大写

.title()              #标题,每个单词首字母大写,

特殊字符,中文在这里算特殊字符

.upper()          # 全部转换成大写字母

.lower()          #全部转换成小写字母

.swapcase()  # 大小写转换

② 居中 和 更改teb:

.center()        # 拉长多少个字符, 由*进行填充     居中

.expandtabs()    #更改\t 变成8个空格

③ 去掉空格   strip

.strip(xxx)    #去掉左右两边的xxx(默认参数为空格)   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.lstrip()        # 去掉左边空格    (  l  可以理解为left  左边)

.rstrip()       # 去掉右边空格     ( r  可以理解为ringt  右边)

④ 替换  replace:

str.replace(参数1, 参数2, 参数3)              替换:   把参数1替换成参数2,  参数3表示替换的次数,默认 mox(全部)

⑤ 切割   split:

str.split(参数1 = 用什么来切,   参数2 = 切的次数 默认是-1 切到最后)     切割 :  用 参数1 把str切割 参数2 次,断开的字符串,组成一个列表, 同时丢失掉 参数1的字符串.

切割完后的结果 是list 列表

如果原字符串和刀一样,得到是由两个空字符的列表

如果刀在原字符串中找不到切点,得到的还是原字符;

如果是 空字符串, 就报错了;

如果在开头或者结尾的时候 出现了你的刀,一定会出现空字符串

⑥ 格式化输出:

# 格式化输出
s12 = , '周杰伦')  # 之前的写法
print(s12)
s12 = , "周润发")    # 按位置格式化
print(s12)
s12 = )     # 指定位置
print(s12)
s12 = )     # 指定关键字
print(s12)

.count   数数

.find   查找     如果你要查找的不存在,返回-1 如果存在  返回索引

.index  求索引的位置 如果找不到就报错

⑧ 条件判断:

.startswith()       # 判断字符是否以xxx开头

.endswith()        #判断字符是否以xxx结尾

.isalnum()          #是否是字母和数字组成

.isdgit()              #是否以数字组成 不识别小数点

.isnumeric()      #是否是全部是数字, 这个比较屌.中文的都能识别

.isalpha()          #是否全部都是字母

len(变量名)      #判断字符有多长    (内置函数)

s18 = "我是你的眼, 我也是a"
ret = len(s18)  # 计算字符串的长度
print(ret)

 注意: len()是python的内置函数. 所以访问方式也不一样. 你就记着len()和print()一样就行了

判断是不是小数  看下面例子琢磨:

# 练习. 用算法判断某一个字符串是否是小数
s17 = "-123.12"
s17 = s17.replace("-", "")  # 替换掉负号
if s17.isdigit():
    print("是整数")
else:
     and not s17.startswith(".") and not s17.endswith("."):
       print("不是小数")
    else:
        print("不是小数")

!!! 迭代

while循环  for循环

for 变量 in 可迭代对象:

pass

可迭代对象:可以一个一个往外取值的对象

s19 = "大家好, 我是Alex, python的小朋友们. 你们好么?"
# 用while循环
index =
while index < len(s19):
     print(s19[index])   #利用索引切片来完成字符的查找
     index = index + 

#用for循环
for w in s19:
    print(w)

'''
     in有两种用法:
         .在for中,是把每一个元素获取到赋值给前面的变量
         .不在for中,判断xxx是否出现在str中.

'''

怎样去计算在字符串中有多少个数字呢?

# 练习, 计算在字符串"I am sylar, I'm 14 years old, I have 2 dogs!"
s20 = "I am sylar, I'm 14 years old, I have 2 dogs!"
count =
for c in s20:
    if c.isdigit():
        count = count +
print(count)

python 基础 three day的更多相关文章

  1. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

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

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

  3. Python小白的发展之路之Python基础(一)

    Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...

  4. Python之路3【第一篇】Python基础

    本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...

  5. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  6. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  7. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  8. python基础之day1

    Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...

  9. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  10. python基础之编码问题

    python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...

随机推荐

  1. 数据结构Java实现01----线性表与顺序表

    一.线性结构: 如果一个数据元素序列满足: (1)除第一个和最后一个数据元素外,每个数据元素只有一个前驱数据元素和一个后继数据元素: (2)第一个数据元素没有前驱数据元素: (3)最后一个数据元素没有 ...

  2. 遍历页面上的checkbox

    $("#Button1").click(function () { $("input[type='checkbox']").each(function () { ...

  3. influxdb

    1.安装Centos# wget https://dl.influxdata.com/influxdb/releases/influxdb-1.1.0.x86_64.rpm# rpm -ivh inf ...

  4. luogu P3234 [HNOI2014]抄卡组

    传送门 nmdwsm 自己看吧,不想写了qwq 垃圾代码如下 和题解完全不一样 #define LL long long #define uLL unsigned long long #define ...

  5. 03-13_static关键字

    static主要作用 常见定义结构:public static void main(): static关键字可以用于定义属性及方法: static定义属性 在一个类之中,主要的组成就是属性和方法(分为 ...

  6. JSP动态页面技术

    1.JSP和html的区别 处理过程的区别 HTML 浏览器发送一个请求到服务器,服务器找到这个页面直接返回. JSP 浏览器发送一个请求道服务器,服务器判断到时.jsp结尾,去调用JSP引擎,JSP ...

  7. 帝国cms建站方法和知识点

    帝国cms建站方法和知识点 1.  首先在帝国cms网站上下载模板系统.根据模板系统上的提示,将指定的目录文件放在指定的位置.然后进行安装.后台管理系统的命名设置.数据库的设置等等. 2.  安装完成 ...

  8. 【tmos】shell工具推荐

    xshell(推荐) putty

  9. 【节点-添加标签】【节点-删除标签】【显示年-月-日-星期】【math算数】【正则表达式】

    1.节点-添加标签 <body><div id="div1"><p id="p1">这是一个段落.</p>< ...

  10. Django学习手册 - ORM 单表数据获取

    Django 单表数据的获取: 先建立数据表格 from django.db import models # Create your models here. class userinfo(model ...