Python字符串变量基础

前言:

	作者是在校本科生,所作的文章均是自己在学习python过程中所做的笔记。
如有不足或错误,还请各位指出。一起学习,一起进步!

Python变量与常量:

变量:在程序运行过程中可以改变其值的量。
常量:在程序运行过程中值不能改变的量,命名习惯上一般使用大写字母。

字符串类型变量

字符串大小写转换

# 字符串的大小写转换可以用于格式化输出,或是数据的格式化存储。
s1 = "hello world!"
s2 = s1.title() #将每个单词的首字母大写
s3 = s1.upper() #将单词的每一个字母均大写
s4 = s1.lower()	#将单词的每一个字母均小写
print(s1)
print(s2)
print(s3)
print(s4)

运行结果:

hello world!
Hello World!
HELLO WORLD!
hello world!

format函数详解

format函数用于对字符串的格式化输出。

# 两种形式
first_name = "Wang"
last_name = "Xiao"
full_name = f"{first_name} {last_name}"
message = "Hello, {}".format(full_name)
print(full_name)
print(message)

结果:

Wang Xiao
Hello,Wang Xiao

将列表或字典作为format函数的变量:

# using a list as a parameters
lis = ['Wang Xiao','Xiao','Wang']
print('My full name is {0}, my first name is {2} and my last name is {1}.'.format(*lis))

# using a dictionary as a parameters
dic = {
    "full_name":"Wang Xiao",
    "first_name":"Wang",
    "last_name":"Xiao"
} 
print('My full name is {full_name}, my first name is {first_name} and my last name is {last_name}.'.format(**dic))

结果:

My full name is Wang Xiao, my first name is Wang and my last name is Xiao.
My full name is Wang Xiao, my first name is Wang and my last name is Xiao.

字符串对齐操作:

{:(冒号) + (占位符) + (<(字符串靠左)/>(字符串靠右)/^(字符串居中)) + (总长度)}

print("{:*<10}".format('hello'))
print("{:*>10}".format('hello'))
print("{:*^20}".format('hello'))
print("{:+^50}".format('Python'))

结果:

hello*****
*****hello
*******hello********
++++++++++++++++++++++Python++++++++++++++++++++++

利用format函数格式化数字:

num = 11
print('{:b}'.format(num)) # 二进制
print('{:d}'.format(num)) # 十进制
print('{:o}'.format(num)) # 八进制
print('{:x}'.format(num)) # 十六进制
print('{:#x}'.format(num)) # 十进制
print('{:#X}'.format(num)) # 十进制

# 保留小数点后两位的正数
print("{:.2f}".format(3.14456))
# 保留小数点后零位(保留整数) 
print("{:.0f}".format(3.1415926535))
# 用千位分隔符将数字隔开
print("{:,}".format(1000000))
# 保留一位小数的百分数
print("{:.1%}".format(0.25))

结果:

1011
11
13
b
0xb
0XB
3.14
3
1,000,000
25.0%

Python中*与**的含义及使用

# 1.收集列表中多余的值
# 一般情况下 如果想一次性对多个变量赋值那么操作如下:
a,b = [1,2]
print(a)
print(b)
# 但是如果输出的值的数量超过了变量名称的话就会报错
# a,b = [1,2,3]
# 利用*可以收集列表中多余的变量
a,*b = [1,2,3,4,5]
print(a)
print(b) # 注意此时变量b是一个列表而不是数字

结果:

1
2
1
[2, 3, 4, 5]
# 2. 在函数中的应用
# 在函数中分为在函数定义时应用和在函数调用时应用
# (1)在函数定义时应用
def my_print(*params):
    print(params)
my_print(1,2,3,4,5)
# 此时函数my_print只有一个变量params,但是可以向这个函数传递不止一个的参数,*会将这些参数生成一个元组并赋予params。
# 可以利用索引调用元组中的变量:
def my_print(*params):
    print(params)
    print(params[0])
my_print(1,2,3,4,5)

# 在函数定义时**的应用:
# **可以将多个参数作为字典传给params:
def my_print(**params):
    print(params)
my_print(a=1,b=2,c=3)

结果:

(1, 2, 3, 4, 5)
(1, 2, 3, 4, 5)
1
{'a': 1, 'b': 2, 'c': 3}
# (2)在函数调用时使用:
# 在函数调用时使用就是将在函数定义时的应用反了过来。
def my_print(a,b):
    print(a)
    print(b)
# 如果我们向函数my_print中只传入一个参数那么必然会报错
params = ['Hello, ','World!']
my_print(params)

结果:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-6-be5a4ba762e4> in <module>()
      6 # 如果我们向函数my_print中只传入一个参数那么必然会报错
      7 params = ['Hello, ','World!']
----> 8 my_print(params)

TypeError: my_print() missing 1 required positional argument: 'b'
# 如果运用*就可以解决
my_print(*params)
# 同理运用**也可以解决,但是此时的参数需要是一个字典的类型
params = {'a':'Hello,','b':'World!'}
my_print(**params)

结果:

a
b
Hello,
World!
# 下面这个函数在定义时同时运用了*与**
# 在执行函数时,函数会先将数组a填满,然后如果发现后面还有字典类型的数据,则会以字典形式完善字典b
def my_print(*a,**b):
    print(a)
    print(b)
my_print(1,2,3,4,a=1,b=2)

结果:

(1, 2, 3, 4)
{'a': 1, 'b': 2}

Python支持的转义字符

转义字符说明
\n换行符
\r回车符
\t制表符,即tab建,相当于四个空格
\a蜂鸣器响铃(计算机蜂鸣器发声)
\b退格(Backsapce),将光标位置移到前一列
\\反斜线
\’单引号
\"双引号
\在字符串行尾的续航符,即一行未写完,转到下一行继续写

字符串中空白的处理方法

空白在python中指的是空格(space) 或 换行(enter) 或 制表符(tab)

p = '    python\t'
print('打印初始字符串:')
print(p)
print('删除右侧空白:')
print(p.rstrip())
print('删除左侧空白:')
print(p.lstrip())
print('删除两侧空白:')
print(p.strip())

结果:

打印初始字符串:
    python	
删除右侧空白:
    python
删除左侧空白:
python	
删除两侧空白:
python

Tips:在检测输出的字符串左右是否有空格时可以选中整行,观察是否有空格存在。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
Python中,可以使用单引号或双引号来声明字符串变量。例如: ``` str1 = 'Hello World' str2 = "I love Python" ``` 你还可以使用三引号来声明多行字符串变量,例如: ``` str3 = '''This is a multi-line string in Python''' ``` 此外,你还可以使用字符串格式化和字符串替换来操作字符串字符串格式化可以使用`format()`方法,例如: ``` name = "Alice" age = 25 print("My name is {} and I am {} years old.".format(name, age)) ``` 字符串替换可以使用`replace()`方法,例如: ``` sentence = "I love Java" new_sentence = sentence.replace("Java", "Python") print(new_sentence) ``` 还有一些其他的字符串操作方法,比如删除空白字符。你可以使用`strip()`方法来删除字符串两侧的空白字符,或使用`lstrip()`和`rstrip()`方法来删除字符串左侧和右侧的空白字符。例如: ``` p = ' python\t' print(p.strip()) ``` 这样会删除字符串两侧的空白字符和制表符。 #### 引用[.reference_title] - *1* *3* [Python字符串变量基础](https://blog.csdn.net/weixin_51492608/article/details/127359878)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [python基础字符串(string类型)](https://blog.csdn.net/qq_34782203/article/details/127321588)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值