Python变量之白首如新,倾盖如故
python中的变量
变量:将运算的中间结果暂存到内存中,方便后续程序调用。
变量的命名规则:
1、变量名由字母、数字、下划线组成。
2、变量名可以用字母、下划线开头,但是不能以数字开头。
3、变量名是区分大小写的。
4、变量名不能使用关键字。
5、变量名最好不要用中文或者拼音。
6、变量名最好起的要有意义,具有描述性。
7、变量名最好不要太长。
8、变量名最好使用驼峰命名法或者下划线命名法。
常量:所谓常量就是不可修改的变量。
在python中不存在绝对的常量,约定俗成的是常量名全部大写。
python中的注释:
单行注释:#是单行注释
多行注释:三个单引号''' '''或者三个双引号""" """。
python基本数据类型:
1、数字类型-int、float、long、complex
2、字符串类型str
3、bool类型
4、列表类型-list
5、元组类型-tuple
6、字典类型-dict
7、集合类型-set
字符串的格式化输出
1、单引号的方式
buf = 'Hello World'
2、双引号的方式
buf = "Hello World"
3、三个单引号(''' ''')(""" """),最主要的是可以换行.
buf = """
窗前明月光,
疑似地上霜.
举头望明月,
低头思故乡.
"""
4、字符串可以执行拼接或者乘法的操作,如下:
4.1 字符串拼接操作:
buf = "abc"
buf_1 = "def"
buf_2 = buf + buf_1 + "ghk"
注意:字符串的拼接只能是同类型
4.2 字符串乘法操作:
name = "小明"
buf = name * 10 # 相当于复制10次变量name
字符串格式化输出
格式化输出常用参数:
%s:非常强大,可以接收任意类型的数据并转化成str类型输出。
%c:整数:将数字转换成其ASCII/unicode对应的值,(py27则只支持0-255)。
%o:将整数转换成八进制表示。
%x:将整数转换成十六进制表示。
%d:将整数、浮点数转换成 十 进制表示。
%e:将整数、浮点数转换成科学计数法(小写e)。
%E:将整数、浮点数转换成科学计数法(大写E)。
%f: 将整数、浮点数转换成浮点数表示(默认保留小数点后6位)。
%g:自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数 法,如果是科学计数则是e;)。
%G:自动调整将整数、浮点数转换成 浮点型或科学计数法表示(超过6位数用科学计数 法,如果是科学计数则是E;)。
%:当字符串中存在格式化标志时,需要用 %%表示一个百分号 注:Python中百分号格式化是不存在自动将整数转换成二进制表示的方式。
格式化输出 1
name = "小明"
age = 18
buf = "你好%s,你今年是%d了吗" % (name,age)
print(buf)
# 打印内容如下
你好小明,你今年是18了吗
格式化输出 2
name = "小明"
age = 18
buf = "你好%(name)s,你今年是%(age)d了吗" % {"name":name,"age":age}
print(buf)
# 打印内容如下
你好小明,你今年是18了吗
格式化输出 3
name = "小明"
age = 18
buf = f"你好{name},你今年是{age}了吗"
print(buf)
# 打印内容如下
你好小明,你今年是18了吗
格式化输出 4
name = "小明"
age = 18
print("你好{},你今年是{}了吗" .format(name,age))
# 打印内容如下
你好小明,你今年是18了吗
格式化输出 5
name = "小明"
age = 18
print("你好{1},你今年是{0}了吗?".format(age,name))
# 打印内容如下
你好小明,你今年是18了吗?
格式化输出 6
name = "小明"
age = 18
print("你好{name},你今年是{age}了吗?".format(name=name,age=age))
# 打印内容如下
你好小明,你今年是18了吗?
获取用户输入input():
使用input('提示信息')函数获取用户输入。
变量 = input('提示信息') #会将用户输入的信息以str的形式保存到变量中。
buf = input('>>>请输入内容:')
print(f'用户输入的内容是:{buf},变量的数据类型是:{type(buf)}')
# 打印内容如下
>>>请输入内容:123
用户输入的内容是:123,变量的数据类型是:<class 'str'>
字符串str常用方法
capitalize():首字母大写,并且将其它字符全部转换成小写。
buf = 'abc_123'
temp = 'abC_123!@#'
print(buf.capitalize())
print(temp.capitalize())
# 打印内容如下
Abc_123
Abc_123!@#
casefold():该方法是Python3.3版本之后引入的,其作用和 lower() 方法相似,可以将字符串中的大写转换为小写。 两者的区别是:lower() 方法只对ASCII编码,也就是‘A-Z’有效,对于其他语言(非汉语,如德语,法语等)中把大写转换为小写的情况只能用 casefold() 方法。相比于lower(),casefold()的功能更加强大。
buf = 'ABc_123'
temp = 'abC_123!@#'
print(buf.casefold())
print(temp.casefold())
# 打印内容如下
abc_123
abc_123!@#
islower():如果字符串中的字符全是小写返回True,否则返回Flase。
buf = 'abc_123'
temp = 'abC_123!@#'
print(buf.islower())
print(temp.islower())
# 打印内容如下
True
False
ljust((width[, fillchar]):指定字符串的宽度,将字符串显示在左侧,如果字符串的长度不够使用指定的字符进行填充。
rjust((width[, fillchar]):指定字符串的宽度,将字符串显示在右侧,如果字符串的长度不够使用指定的字符进行填充。
center(width[, fillchar]):指定字符串的宽度,将字符串显示在中间的位置,如果字符串的长度不够使用指定的字符进行填充。
参数:
width:设置字符串的宽度。
fillchar:如果字符串的长度不够,设置填充的字符。
示例:
buf = 'abc'
print(buf.ljust(20,'#')) # 设置字符串的跨度为20,如果字符串的长度不够用#填充
print(buf.center(20,'#'))
print(buf.rjust(20,'#'))
# 打印内如如下
abc#################
########abc#########
#################abc
count(substring, start, end):统计字符串中substring的数量。
参数:
substring:需要统计的字符串。
start:从起始位置开始统计。
end:到end位置接收。
示例:
buf = 'abacddaaa'
print(f'统计所有字符a的个数:{buf.count("a")}')
print(f'统计字符串前五个字符中a的个数:{buf.count("a",0,5)}')
# 打印内容如下
统计所有字符a的个数:5
统计字符串前五个字符中a的个数:2
encode(encoding='utf-8', errors='strict'):字符串的编码方式,返回字节。
buf = 'abc'
print(buf.encode(encoding='utf-8'))
# 打印内容如下
b'abc'
endswith(suffix[, start[, end]]):判断是不是以suffix结尾,如果是返回True,否则返回False。
参数:
suffix:结尾字符串。
start:从start处开始
end:到end结束
示例:
buf = 'abcdef'
print(buf.endswith('def'))
print(buf.endswith('def',4,5))
print(buf.endswith('abc'))
# 打印内容如下
True
False
False
find(sub[, start[, end]]):查找元素下标,如果找到返回元素下标,如果找不到返回-1。
参数:
sub:需要查找的元素。
start:从start处开始
end:到end结束
示例:
buf = 'abcdef'
print(f'元素d的下标是:{buf.find("d")}')
print(f'元素z的下标是:{buf.find("z")}')
# 打印内容如下
元素d的下标是:3
元素z的下标是:-1
index(sub[, start[, end]]):查找元素下标,如果找到返回元素下标,如果找不到会报错。
find(sub[, start[, end]]):查找元素下标,如果找到返回元素下标,如果找不到返回-1。
参数:
sub:需要查找的元素。
start:从start处开始。
end:到end结束。
示例:
buf = 'abcddef'
print(f'元素d的下标是:{buf.index("d")}')
print(f'元素z的下标是:{buf.index("z")}')
# 打印内容如下
元素d的下标是:3
Traceback (most recent call last):
File "C:\Users\id_iot\Desktop\1.py", line 3, in <module>
print(f'元素z的下标是:{buf.index("z")}')
ValueError: substring not found
isalnum():如果字符串是由字符或者数字返回True,否则返回Flase。
buf = 'abcddef123'
temp = 'abc_123+='
print(buf.isalnum())
print(temp.isalnum())
# 打印内容如下
True
False
isalpha():如果字符串是由字母或者汉字返回True,否则返回Flase。
buf = 'abcddef你好asdf'
temp = 'abc123'
print(buf.isalpha())
print(temp.isalpha())
# 打印内容如下
True
False
isdecimal():如果字符串是由十进制数字组成返回True,否则返回Flase。
buf = 'abc123'
temp = ''
print(buf.isdecimal())
print(temp.isdecimal())
# 打印内容如下
False
True
isdigit():如果字符串是由数字组成返回True,否则返回Flase。
buf = 'abc123'
temp = ''
print(buf.isdigit())
print(temp.isdigit())
# 打印内容如下
False
True
isidentifier():如果字符串是由字母数字或者下划线组成返回True,否则返回Flase。
buf = 'abc_123'
temp = 'abc_123!@#'
print(buf.isidentifier())
print(temp.isidentifier())
# 打印内如如下
True
False
isnumeric():如果字符串是由数字组成返回True,否则返回Flase。
buf = 'abc12'
temp = ''
print(buf.isnumeric())
print(temp.isnumeric())
# 打印内容如下
False
True
isprintable():如果字符串中没有换行,制表符等返回True,否则返回Flase。
buf = 'abc_123!@#$%你好'
temp = 'abc_123!@#$%你好\n'
print(buf.isprintable())
print(temp.isprintable())
# 打印内容如下
True
False
isspace():如果字符串是空格(注意:''不是空格)则返回True,否则返回Flase。
buf = 'abc 123'
temp = ' '
print(buf.isspace())
print(temp.isspace())
# 打印内容如下
False
True
istitle():如果字符串是以大写开头返回True,否则返回Flase。
buf = 'aBc123'
temp = 'Abc123'
print(buf.istitle())
print(temp.istitle())
# 打印内容如下
False
True
isupper():如果字符串中的字符全是大写返回True,否则返回Flase。
buf = 'aBc123'
temp = 'ABC123'
print(buf.isupper())
print(temp.isupper())
# 打印内如如下
False
True
join(iterable):将可迭代对象转换成字符串,iterable是可迭代对象,注意:iterable的元素必须是字符串否则会报错。
buf = ['a','b','c']
temp = [1,2,3]
print('_'.join(buf)) # 转换字符串以"_"进行分隔
print('|'.join(temp))# 转换字符串以"|"进行分隔
# 打印内如如下
a_b_c
Traceback (most recent call last):
File "C:\Users\id_iot\Desktop\1.py", line 4, in <module>
print('|'.join(temp))
TypeError: sequence item 0: expected str instance, int found
lower():将字符串全部转换成小写。
upper():将字符串全部转换成大写。
buf = 'aBc'
print(buf.lower())
print(buf.upper())
# 打印内容如下
abc
ABC
lstrip([chars]):去掉字符串左侧的chars。
strip([chars]):去掉字符串两侧的chars。
rstrip([chars]):去掉字符串右侧的chars。
buf = 'aabbccaa'
print(buf.lstrip('aa'))
print(buf.strip('aa'))
print(buf.rstrip('aa'))
# 打印内如如下
bbccaa
bbcc
aabbcc
partition(sep):在字符串中搜索分隔符sep,以元组的形式返回结果、如果找不到分隔符,则返回S和两个空字符串。
buf = 'aabbccaa'
print(buf.partition('bb'))
print(buf.partition('_'))
# 打印内如如下
('aa', 'bb', 'ccaa')
('aabbccaa', '', '')
replace(old, new[, count]):替换字符串中的元素。
参数:
old:需要被替换的字符。
new:替换后的字符。
count:替换的次数。
示例:
buf = 'aabbccaa'
print(buf.replace('aa',''))
print(buf.replace('aa','',1)) # 替换1次
# 打印内如如下
123bbcc123
123bbccaa
split(sep=None, maxsplit=-1):将字符串以sep的方式进行分隔,返回分隔后的列表。
参数:
sep:分隔符。
maxsplit:分隔的次数。
示例:
buf = 'aabbccaa'
print(buf.split('b'))
print(buf.split('b',1)) # 只分隔一次
# 打印内如如下
['aa', '', 'ccaa']
['aa', 'bccaa']
startswith(prefix[, start[, end]]):如果字符串以prefix开头返回True,否则返回Flase。
参数:
prefix:开头字符。
start:从start处开始
end:到end结束
示例:
buf = 'aabbccaa'
print(buf.startswith('aabb'))
print(buf.startswith('aabb',0,2))
# 打印内如如下
True
False
swapcase():将字符串中的大写字母转换成小写,将字符串中的小写字母转换成大写。
buf = 'aaBBccDD'
print(buf.swapcase())
# 打印内容如下
AAbbCCdd
title():将字符串首字母大写,其它字符小写。
buf = 'aaBBccDD'
print(buf.title())
# 打印内如如下
Aabbccdd
zfill(width):指定字符串的宽度,如果宽度大于字符串长度,在左侧用0填充。
参数:
width:指定字符串的宽度。
示例:
buf = 'aaBBccDD'
print(buf.zfill(20))
# 打印内如如下
000000000000aaBBccDD
下一篇:python运算符:https://www.cnblogs.com/caesar-id/p/10205186.html
Python变量之白首如新,倾盖如故的更多相关文章
- Python 变量类型
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- Python变量、数据类型6
1.Python变量 变量,即代表某个value的名字. 变量的值存储在内存中,这意味着在创建变量时会在内存中开辟一个空间. !!!即值并没有保存在变量中,它们保存在计算机内存的深处,被变量引用.所以 ...
- Python变量类型
Python变量类型 变量是存储在内存中的值,因此在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定的内存,并决定什么数据可以被存储在内存中. 因此变量可以指定不同的数据类型, ...
- C与Python变量的区别
C中变量有类型,代表一定内存. 而Python变量只是封装过的指针,没有类型.如果不指向对象,就没有意义,更谈不上类型. python中 a=b,和C中 a=b是完全不同的两个操作.前者只是指针(引用 ...
- Python变量类型(l整型,长整形,浮点型,复数,列表,元组,字典)学习
#coding=utf-8 __author__ = 'Administrator' #Python变量类型 #Python数字,python支持四种不同的数据类型 int整型 long长整型 flo ...
- python——变量
参考资料: Python程序设计与实现 变量名的命名规则 仅仅由大.小写英文字母,下划线(_),数字(不可作为变量名的开头)组合而成: 不能使用Python关键字和函数名作为变量名: 变量名不能包含空 ...
- 【python系列】--Python变量和数据类型
python数据类型 一.整数 Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1,100,-8080,0,等等. 计算机由于使用 ...
- [Python]基础教程(4)、Python 变量类型
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- python变量与基础数据类型
一.什么是变量 变量是什么? 变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用.在python中一切都是变量. 1.python变量命名的要求 1,必须有数字,字母,下划线任意组合. ...
随机推荐
- Python面试真题第三节
51.正则匹配,匹配日期2018-03-20 url='https://sycm.taobao.com/bda/tradinganaly/overview/get_summary.json?dateR ...
- CORS(跨域)请求总结和测试
一.简单请求与非简单请求 跨域请求分为简单与非简单请求,同时满足以下两种条件的可以确定为简单请求. 简单请求的请求方法 请求方法 说明 head 发送头部信息 get post 简单请求的HT ...
- Nginx学习系列四默认负载均衡轮询及Ip_hash等常用指令介绍
一.简介 Upstream模块是Nginx中一个核心模块,当客户端访问Nginx服务器的时候,Nginx会从服务器列表中选取压力小的服务器,然后分配给客户端进行访问.这个过程,Nginx通过轮询算法轮 ...
- asp.net mvc简单实现基于Razor的分页控件
最近在写一些web应用了解了一下asp.net mvc发现的确好用,所以直接就干上了.不过在使用asp.net mvc的Razor模板的情况并不向传统webform那样可以使用控件.但从Razor的功 ...
- 带着萌新看springboot源码
springboot的功能确实强悍,只需要很少的配置,就能够做出来一个简单的web应用,下面我就简要的分析一下为什么springboot能够起作用. 不觉得很奇怪吗?只需要一个主配置类(就是启动那个m ...
- SpringBoot完美配置阿里云的文件上传
新建一个config类 AliyunOSS.java @Configuration @Data public class AliyunOSS { private OSSClient ossClient ...
- C语言实现链栈的初始化&进栈&出栈&读取栈顶元素
/*链表实现栈的一系列操作*/ #include<stdio.h> #include<stdlib.h> #define OK 1 #define ERROR 0 typede ...
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.2->WinForm版本新增新的角色授权管理界面效率更高、更规范
角色授权管理模块主要是对角色的相应权限进行集中设置.在角色权限管理模块中,管理员可以添加或移除指定角色所包含的用户.可以分配或授予指定角色的模块(菜单)的访问权限.可以收回或分配指定角色的操作(功能) ...
- Python2 编码问题分析
本文浅显易懂,绿色纯天然,手工制作,请放心阅读. 编码问题是一个很大很杂的话题,要向彻底的讲明白可以写一本书了.导致乱码的原因很多,系统平台.编程语言.多国语言.软件程序支持.用户选择等都可能导致无法 ...
- Java——重载和重写
前言 在程序设计中经常会遇到对对方法的重载或者重写,下面将介绍重载和重写. 重载(Overloade) 重载出现的原因 任何程序设计语言都具备的一项重要特性就是对名字的运用.当创建一个对象时,就给对象 ...