part 1
作业
- 将用户的姓名存到一个变量中,并向该用户显示一条消息。显示的消息应非常简单,如“Hello Eric, would you like to learn some Python today?”。
name = '大神'
print('hello ' + name + ' would you like to learn some python today?')
结果:hello 大神 would you like to learn some python today?
2.调整名字的大小写0 : 将一个人名存储到一个变量中,再以小写、大写和首字母大写的方式显示这个人名。
print(name.title())
print(name.upper())
print(name.lower())
结果: Liuluzhi
LIULUZHI
liuluzhi
3.名言: 找一句你钦佩的名人说的名言,将这个名人的姓名和他的名言打印出来。输出应类似于下面这样(包括引号):
Albert Einstein once said, “A person who never made a mistake never tried anything new.”
name = '王健林'
famous = "\"定一个小目标,比如先挣它一个亿\""
print(name +"说:" + famous + '!')
结果:王健林说:"定一个小目标,比如先挣它一个亿"!
4.重复练习3,但将名人的姓名存储在变量famous_person 中,再创建要显示的消息,并将其存储在变量message 中,然后打印这条消息。
famous_person = '王健林'
message = '定一个小目标,比如先挣它一个亿'
print(famous_person + ' .说' + message)
结果:王健林 :"说定一个小目标,比如先挣它一个亿。"
5.剔除人名中的空白: 存储一个人名,并在其开头和末尾都包含一些空白字符。务必至少使用字符组合"\t" 和"\n" 各一次。 打印这个人名,以显示其开头和末尾的空白。然后,分别使用剔除函数lstrip() 、rstrip() 和strip() 对人名进行处理,并将结果打印出来。
name = ' Cristiano \nRonaldo dos \tSantos Aveiro '
print(name.lstrip())
print(name.rstrip())
print(name.strip())
结果:Cristiano
Ronaldo dos Santos Aveiro
Cristiano
Ronaldo dos Santos Aveiro
Cristiano
Ronaldo dos Santos Aveiro
part 2
1.什么是字符串
使用单引号或者双引号括起来的字符集就是字符串 | 引号中单独的符号、数字、字母等叫字符 | 转义字符:可以用来表示有一些特殊功能或者是特殊意义的字符(通过在固定的字符钱加\) |
---|---|---|
'123' #就是字符串 | ' ' | \ ->\ |
'abcd' 'dwadwad' '中文汉字' | ' ->' | \n ->换行 \t ->制表符 " ->" |
计算字符串长度的时候,转义字符代表一个字符
str1 = '\\'
str2 = '床前明月光,\n疑是地上霜'
print(str1)
2.阻止转义
可以在字符串前加r阻止转义
str1 = r'\\'
print(str1)
3.Python中的字符串的字符是Unicode编码
Unicode编码:使用16位对一个字符进行编码,编码的目的是让字符存储到计算机中。
unicode编码包含ascii编码,可以表示所有的语言和符号。
ord1 = ord('刘')
ord2 = ord('路')
ord3 = ord('直')
print(hex(ord1),hex(ord2),hex(ord3)) #获取一个字符的Unicode编码,也可以将一个Unicode转换成字符
chr(编码值)
print(chr(0x4e00))
字符串比较大小的时候,从字符串开始一次比较每个字符的大小,知道字符不一样为止。比较字符大小的时候实际上比的是编码的大小
print('abc' > 'b')
print('abc' > 'aa')
part 3
python的字符串,实质是一个有序的字符序列
1.获取字符串长度:(长度->字符串中字符的个数)
len是获取序列长度的内置函数
count = len('abc123')
print(count)
2.通过下标字符串中的某一个字符
字符串中每个字符都对应一个下标(索引),我们可以通过索引值去获取固定的字符:字符串[索引值]
‘abc’-->a:0 b:1 c:2
str1 = 'abc'
print(str1[0])
print(str1[2])
str2 = 'good good study \nday day up'
a = len('good good study \nday day up')
print(a-1)
下标的范围:0~字符串长度-1;-1~-字符串长度
获取字符的时候,索引值不能超过索引的范围,否则会报错,IndexError。
print(str1[-1]) #获取最后一个字符
print(str2[-2]) #获取倒数第二个字符
3.获取字符中的部分字符(切片)
字符串[开始下标:结束下标]-->获取字符串中从开始下标到结束下标的字符(包含开始,不包含结束的字符) | 字符串[开始下标:结束下标:步进]==字符串[开始下标:结束下标:1] |
---|
a、开始下标对应的字符要在结束下标对应的字符前。
str4 ='hello python'
print(str4[6:12])
print(str4[-6:12])
b、开始下标省略:从字符串的最前面取到结束下标前
print(str4[:4])
c、结束下标省略:从开始下标开始取,直到字符结束
print(str4[4:])
d、如果两个都省略:获取整个字符串的内容
print(str4[:])
e.步进
print(str4[::2])
f.负数步进一般不用,为负数的时候开始下标和结束下标相反。
print(str4[3:2:-1])
part 4
1. + :字符串拼接
a = 'hello ' + 'python'
print(a)
注意 + 号两边应是相同类型的数字或字符串
2. * 号 让字符串重复
是字符串乘以一个整数
a = 'abc' * 3
print(a)
3.in:
字符串1 in 字符串2:判断字符串1是否在字符串2中
result = 'a' in 'abc'
print(result)
4.not in
字符串1 not in 字符串2 : 判断字符串是否不在字符串2中 --> 不在就是true 在就是False
result = '123' not in 'adv'
print(result)
5.格式字符串
格式: '占位符1占位符2'%(值1,值2)
str1 = 'abc123' + '>'
print(str1)
str1 = 'ab%sc' % ('>')
print(str1)
%s-->字符串占位符(格式符) | %d-->整数占位符(格式符) | %f-->浮点数占位符 | %c-->长度是1的字符串占位符(字符占位符) |
---|
str2 = '-%s-%d-%f-' % ('我是字符串',125,12.5,)
print(str2)
%.nf:使用n值限制小数点后面的小数点的位数(默认6位小数)
srt3 = '金额:%.2f元' %(1000)
print(srt3)
如果后面没有加%,那么这个字符串只是一个普通的字符串
str4 = '金额L%f元'
print(str4)
%x和%X--> 十六进制数据占位符
number = 100
xxx的十六进制是XXX
str5 = '%d的十六进制是0%x' % (number,number)
print(str5)
6.格式化输出
name = '刘路直'
age = 18
#xx今年xx岁
print('%s今年%d岁' % (name,age))
part 5
通用的格式
字符串.相关函数()
str1 = 'abc'
print(str1.title())
2.center(widtg,fliichar):将原字符串变成指定长度并且内容居中,剩下的部分使用指定字符填充。
new_str = str1.center(7,'!')
print(str1,new_str)
3.rjust(width,fillchar)右对齐
new_str = str1.rjust(7,'*')
print(new_str)
产生学号
number = 9 #py1805009
#str(数据):将任何其他数据转换成字符串
num_str = str(number)
print(num_str,type(num_str))
#让字符串变成宽度为3,内容右对齐,剩下部分使用“0”填充
new_str = num_str.rjust(3,"0")
print(new_str)
new_str = 'py1805' + new_str
print(new_str)
4.ljust(width,fillchar):左对齐
number1 = 58
num1_str = str(number1)
print(num1_str,type(num1_str))
new1_str = num1_str.ljust(3,'0')
print(new1_str)
new1_str = 'py1805' + new1_str
print(new1_str)
5.字符串1.join(字符串2) 在字符串2每个字符之间插入一个字符串1
new_str = '*'.join('bbb')
print(new_str)
part 6
if语句的结构
if 条件语句:
条件语句结果为true执行的代码块
条件语句结果为False执行的代码块
先判断条件语句是否为true,如果为True就执行if语句中:后面对应的一个缩进的所有的代码,否则不会执行代码块
条件语句可以是任何有值的表达式,一般是布尔值
if True:
print('代码1')
print('代码2')
print('代码3')
练习:用一个变量保存时间(50米短跑时间),如果时间小于8s
time = 7
if time < 8:
print('及格')
2
if 条件语句:
语句块1
else
语句块2
执行过程:先判断条件语句是否成立,如果为T就执行语句块1,如果为F则执行语句块2
score = 60
if score >= 60:
print('及格')
else:
print('不及格,快滚蛋')
网友评论