day 3

2018-07-18  本文已影响0人  02b2972e6a93

part 1

作业

  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('不及格,快滚蛋')
上一篇 下一篇

猜你喜欢

热点阅读