1.概念

1.十进制转二进制,对2取余,余数倒序排列
2.字符串为空的时候,bool值为false,字符串非空就是True
3.字符串转化成int时,必须是只包含数字才能转化。
4.字符串转化成int时可以有空格,int()会自动的省略空格---> int(" 5 ")

2.基本数据类型详解

1.数字int
  #bit_length() 当十进制用二进制表示时,最少使用的位数
  v = 11
  data = v.bit_length() #查看十进制的1000在二进制里面有多少有效位数(从遇到1开始向后累加个数)
  print(data) 2.布尔值bool
  布尔值就两种:True,False。就是反应条件的正确与否。
  真   1   True。
  假   0   False。   
  
  注意:字符串为空的时候,bool值为false,字符串非空就是True。
3.字符串的索引和切片
  索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。
    a = 'ABCDEFGHIJK'
    print(a[0]) --->A
    print(a[3]) --->D
    print(a[5]) --->F
    print(a[7]) --->H
    print(a[-1]) --->K   切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚,最重要)。
    a= "我爱python"
    s = a[0:4] #取值为"我爱py",根据顾头不顾腚原则,只能取值到4-1,不能取到下标为4的元素
    s1 =a[:5] #从0开始的话,0可以省略不写,默认不写
    s2 = a[:] #从头取到尾
    s3 = a[:5:2] #[起始索引:结尾索引+1:步长] #从下标为0开始到下标4之间,相隔一个取一个值,默认是相隔2-1取一个
    s4 = a[-1] #取最后一位
    s5 = a[0:-1] #由于顾头不顾腚,只能取值到倒数第二位
    s6 = a[-1:-4:-2] #反向取值必须加反向步长
    s7 = a[5:0:-2]) #反向取值必须加反向步长
  注意:
    1.支付串里面的每元素有自己的下标,通过下标也能找到每个元素
    2.通过索引和切片出来的都是字符串类型,并且是新的字符串,与源字符串无关,新找到的字符串会在内存中开辟新的地址来存放找到的字符串
    3.正数索引和负数索引可以混用。只要能指到正确的元素即可。(但是一般不用,会比较麻烦)

3.字符串str方法详解

s = "root admin p0st admin"

字符串拼接:
  操作列表时,列表里面的内容必须全部是字符串类型,对操作列表最有用,不用使用for循环打印了--->join拼接之后返回的是字符串
连接符.join(iterable)
s7 = '*'.join(s)
s7 = '_'.join(s)
s7 = 'sb'.join(s)
print(s7)
l1 = ['wir', 'ax', 'tai'] #jion如果要操作列表的话,里面元素必须是字符串型
s7 = ','.join(l1) --->wir,ax,tai
print(s7)
字符串分割:
  s.spilt()      #默认按空格来分割
  s.spilt(',')    #按指定字符来分割
  s.spilt(',',1) #按指定分割次数来分割,以逗号分割,默认从左到右分割一次
  s.rspilt() #从右向左分割
  默认按空格来分割,会将str类型转化成list类型(因为str类型是可迭代类型;能被for循环的都是可迭代类型)
  当要分割的字符串中出现几个指定字符时,分割的时候就会出现n+1个元素
  
另一种分割方式:
  s ="123def456"
  print(s.partition("def"))--->('123','def','456')会返回一个远足
字符串替换:
  s.repalce('admin','123') #将admin替换成123
  s.replace('admin','123',2) #将出现的前两次admin都换成123,后面再出现的不替换 字符串去除:
  s.strip() #默认去除字符串两边的换行符,制表符和空格
  s.rstrip() #只去除右边的。。。。。。
  s.lstrip() #只去除左边的。。。。。。
  s.strip('root') #去除字符串中的root,但是只是去除第一个发现的,如果你写troop,也会去除root is系列:
  print(name.isalnum()) #字符串由字母或数字组成
  print(name.isalpha()) #字符串只由字母组成
  print(name.isdigit()) #字符串只由数字组成
  print(name.isspace()) #判断是否是空格 大小写:
  print(name.capitalize()) #首字母大写
  print(name.swapcase()) #大小写翻转
  print(name.title()) #每个单词首字母大写,非字母隔开的每个单词的首字母大写
  print(name.upper()) #字符串变大写
  print(name.lower()) #字符串变小写
次数和长度:
  print(s.count('f')) #统计每个字符出现的次数
  print(len(s)) #打印出字符串的长度(内置函数) str.isinstance是Python中的一个内建函数。是用来判断一个对象的变量类型。
以。。。开头或结尾  
  a4 = "dkfjdkfasf54"
  #startswith 判断是否以...开头
  #endswith 判断是否以...结尾
  # ret4 = a4.endswith('jdk',3,6) # 顾头不顾腚
  # print(ret4) # 返回的是布尔值
  # ret5 = a4.startswith("kfj",1,4)
  # print(ret5)
寻找字符串中的元素是否存在
  # ret6 = a4.find("fjdk",1,6)
  # print(ret6) # 找到第一个元素就返回,返回的找到的元素的索引,如果找不到返回-1
  # ret61 = a4.index("fjdk",4,6)
  # print(ret61) # 找到第一个元素就返回,返回的找到的元素的索引,找不到报错。
格式化输出:format
  s = '我叫{},今年{},性别{}'
  方法一:
  s11 = s.format('123', '23', 'man')
  print(s11)
  方法二:
  s = '我叫{0},今年{1},性别{2},我依然叫{0}{0}{0}'
  s11 = s.format('123', '23', 'man')
  print(s11)   方法三:
  s = '我叫{name},今年{age},性别{sex},我依然叫{name}'
  s11 = s.format(name='123', sex='man', age='23')
  print(s11)
字符串实现翻转
  s= "12345"
  result = s[::-1]--->54321 python中步进为正,从左往右取,步进为负,从右往左取
  说明:
    result = s[i:j:z]
    当z>0时,i为起始索引(缺省为0),j为结束索引(不包括最后一个,缺省为len(a)), s为步进(缺省为1)
    当z<0时,i缺省时默认为-1,j缺省时默认为-len(s)-1,所以就相当于result=s[-1::-len(s)-1:-1] ,相当于从右向左读一遍 other:
  info.endode('utf-8') #更改编码
 
 

 4.for循环

info = "asdalicydn29458cclsds"
for item in info:
print(item,',',end='') #打印到一行,item打印的内容,‘,’表示已,分割内容,end=''表示不加换行符-->默认是已空格分开,并且加\n #for是有限循环,能被for循环的就叫做可迭代对象

返回系列

python基础之 基本数据类型,str方法和for循环的更多相关文章

  1. python基础复习-1-2 数据类型-str、list、tuple、dict

    数据类型 数字 引号: 123 数值 '123' 字符串 整数:ini long 范围:(-2**31 - 2**31) num = 123 长整型 long (L) num = 123L 浮点型:f ...

  2. Python基础(一)_数据类型、条件判断、循环、列表

    编译型语言(中文版)运行代码之前,要先编译.然后再运行编译时间比较长c.c++.c# 解释型语言(翻译版)运行的时候才去编译,运行一次编译.运行效率没有编译型语言快python.ruby.shell. ...

  3. python基础_格式化输出(%用法和format用法)(转载)

    python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制%d -- dec 十进制%x -- hex 十六进制 &g ...

  4. Python基础2--Python简单数据类型

    python简单数据类型 1 list list的创建,使用[] a_list = [‘a’, ’b’, ‘c’] print a_list print a_list[0] #a 如果去list的最后 ...

  5. Python基础(2) - 动态数据类型

    Python是一门强类型语言,单定义变量时不需要制定类型. C#这样定义变量: ; VB这样定义变量: Python不需要制定类型,给变量赋什么类型的值,它就是什么类型.(穿神马就是神马?) > ...

  6. 记录我的 python 学习历程-Day03 数据类型 str切片 for循环

    一.啥是数据类型 ​ 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能呀,计算机虽然很强大,但从某种角度上看又很傻,除非你明确的告诉它,1是数字,"汉"是文字,否则它是分 ...

  7. python基础(9):基本数据类型四(set集合)、基础数据类型补充、深浅拷贝

    1. 基础数据类型补充 li = ["李嘉诚", "麻花藤", "⻩海峰", "刘嘉玲"] s = "_&qu ...

  8. python基础知识之数据类型

    一.与用户的交互 古时候,我们去银行取钱,需要有一个银行业务员等着我们把自己的账号密码输入给他, 然后他去进行验证,成功后,我们再将取款金额输入/告诉他 骄傲的现代人,会为客户提供一台ATM机(就是一 ...

  9. Python基础语法和数据类型最全总结

    摘要:总结了Python最全基础语法和数据类型总结,一文带你学会Python. 本文分享自华为云社区<Python最全基础语法和数据类型总结>,原文作者:北山啦 . 人生苦短,我用Pyth ...

随机推荐

  1. SQL递归方式实现省市区县级别查询

    数据库脚本 CREATE TABLE [dbo].[Std_Area]( [Id] [int] NOT NULL, [Name] [nvarchar](50) NULL, [ParentId] [in ...

  2. Gorm使用详解

    1.什么是Gorm go语言编写的orm框架 特点: 1)全功能ORM 2)关联(包含一个,包含多个,属于,多对多) 3)Callbacks(创建/保存/更新/删除/查找前后回调) 4)预加载 5)事 ...

  3. 代码注释中的专有词——TODO、FIXME和XXX

    [时间:2017-09] [状态:Open] [关键词:代码注释,TODO, FIXME, XXX] 阅读开源代码时可能经常遇到TODO.FIXME.XXX的单词,通常这些都是有其特殊含义的. 中文版 ...

  4. 【Java】类加载过程

    JVM把class文件加载到内存,并对数据进行校验.解析和初始化,最终形成JVM可以直接使用的Java类型的过程. 类加载的过程主要分为三个部分: 加载 链接 初始化 而链接又可以细分为三个小部分: ...

  5. 资源查找器PathMatchingResourcePatternResolver的使用

    资源查找器PathMatchingResourcePatternResolver的使用 PathMatchingResourcePatternResolver是一个Ant通配符模式的Resource查 ...

  6. Angular4学习笔记-目录汇总

    Angular4学习笔记(一)-环境搭建 Angular4学习笔记(二)-在WebStorm中启动项目 Angular4学习笔记(三)- 路由 Angular4学习笔记(四)- 依赖注入 Angula ...

  7. PXE(preboot execution environment):【网络】预启动执行环节:安装 ubuntu、rehat系列:成功

    必要条件: 网卡硬件支持 搭建相配套的DHCP\TFTP\HTTP(或FTP)后端服务器:推荐pxesrv,好用! 准备必要的pxe引导文件:pxelinux.0.menu.c32,该2位来自sysl ...

  8. pyCharm最新激活码(2018激活码)

    首先输入新的License sever address 首先尝试处理方法是,针对过期会弹出激活框: 选择 Activate new license with License server (用lice ...

  9. Python代码转换为exe可执行程序详解

    1:安装pyinstaller pip install pyinstaller 2,制作exe 1,先写一个hello.py print('hello world!') input() 2.执行(在s ...

  10. MySQL 全文检索 ngram Mybatis

    创建全文索引(FullText index) 创建表的同时创建全文索引 FULLTEXT (name) WITH PARSER ngram 通过 alter table 的方式来添加 alter ta ...