python_day1基础

今日作业

作业要求
程序代码
>>>name = ' aleX'

>>>name1 = name.strip()         # 1)移除name变量对应的值两边的空格,并输出处理结果
>>>print(name1)
aleX

>>>print(name.startswith('al'))     # 2)判断name变量对应的值是否以 "al" 开头
False

>>>print(name.endswith('X'))      # 3)判断name变量对应的值是否以 "X" 结尾
True

>>>name4 = name.replace('l','p')    # 4)将name变量对应的值中的 ''l'' 替换为 "p",并输出结果
>>>print(name4)
 apeX

>>>name5 = name.split('l')     # 5)将name变量对应的值根据 "l" 分割,并输出结果
>>>print(name5)
[' a', 'eX']

>>>name6 = name.upper()     # 6)将name变量对应的值变大写,并输出结果
>>>print(name6)
 ALEX

>>>name7 = name.lower()     # 7)将name变量对应的值变小写,并输出结果
>>>print(name7)
 alex

>>>print(name[1])     # 8)请输出name变量对应的值的第 2 个字符
a

>>>print(name[0:3])     # 9)请输出name变量对应的值的前 3 个字符
 al

>>>print(name[-2::])     # 10)请输出name变量对应的值的后 2 个字符
eX

>>>print(name.find('e'))     # 11)请输出name变量对应的值中 "e" 所在索引位置
3

>>>name12 = name[0:-1]     # 12)获取子序列,去掉最后一个字符
>>>print(name12)
 ale

1.变量名(指向值所在的空间),等号,变量值

>>>name = 'Kermit'
>>>sex = 'male'
>>>age = 18
>>>level = 10
变量在内存

2.变量的定义规范

1. 变量名只能是 字母、数字或下划线的任意组合
2. 变量名的第一个字符不能是数字
3. 关键字不能声明为变量名['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

3.定义方式:

驼峰体
>>>AgeOfOldboy = 56
>>>NumberOfStudents = 80
下划线(推荐使用)
>>>age_of_oldboy = 56
>>>number_of_students = 80

4.定义变量名不好的方式

变量名为中文、拼音
变量名过长
变量名词不达意

5.定义变量会有:id,type,value

1. 等号比较的是value
2. is比较的是id

python小计数池(python优化机制):
在变量值产生后指定的范围内,
在内存中事先开辟一块内存空间,
然后分别把指定范围内的变量存放进去
#判断值是否相等
>>>print(x == y)

#判断id是否相等
>>>print(x is y)
强调:
1. id相同,意味着type和value必定相同 
2. value相同type肯定相同,但id可能不同,如下
>>>x = 'Info Kermit:18'
>>>y = 'Info Kermit:18'
>>>id(x)
4376607152
>>>id(y)
4376607408
>>>x == y
True
>>>x is y
False

6.常量(全大写字母,也是变量,默认不变)

>>>SCHOOL = 'xxxxxx'

7.用户交互

>>>name = input('input your name:')
>>>name = input('input your pwd:')
>>>print(name,pwd)

8.注释

代码注释分单行和多行注释, 单行注释用#
多行注释可以用三对双引号""" """

代码注释的原则:
1. 不用全部加注释,只需要在自己觉得重要或不好理解的部分加注释即可
2. 注释可以用中文或英文,但不要用拼音

9.文件头

!/usr/bin/env python
-*- coding: utf-8 -*- 

10. 基本数据类型

数据即变量的值,如age=18,18则是我们保存的数据。
变量的是用来反映/保持状态以及状态变化的,毫无疑问针对不同的状态就应该用不同类型的数据去标识

1.整型 int

>>>number = 100            # int(100)
>>>number = int(100)       #两者等价

2.浮点型 float

>>>f = 15.0        # float(15.0)
>>>f = float(15.0)

3.字符串类型

>>>name = 'ABC'
>>>pwd = ''hfdsjkhf''
>>>context = '''jsdfh
dsjkfdhsk
sdfjk'''                 #多行定义字符串

#python字符串之间可以连接,相加、乘
>>>print(name*5)
>>>print(name+pwd)
>>>print(name,pwd)
字符串内置函数
list = [1,2,3,4,5]
str = 'abcdefghi   '
1.按索引取值(正向取,反向取):只能取
>>>print(list[2])
3
>>>print(list[-1])     #反向取
5

2.切片取值(顾头不顾尾)
>>>print(str[2:4])     #2 ~ 3
cd

步长为2
>>>print(str[2:7:2])      #从2开始取,每隔一个取一次
cf

3.长度len
print(len(list))

4.成员运算in和not in
>>>print('x' in str)
False
>>>print('a' in str)
True

5.移除空白strip(去除字符串左右两边的空格)
>>>print(str.strip())
abcdefghi

6.切分split(根据split()括号中的规则,切分字符串,并追加到列表中)
>>>str2='abc def ghi'
>>>list2=str2.split()
>>>print(list2)
['abc','def','ghi']

7.循环
>>>for i in str2:
    print(i,end = ' ')   #自定义end参数
str3 = '***abc'
str4 = 'def***' 
1.  strip,lstrip(去除左边的符号),rstrip(去除右边的符号)
>>>print(str3.lstrip('*'))
abc

>>>print(str3.rstrip('*'))
def

2. lower(转换成小写),upper(转换成大写)
>>>str5 = 'abc'
>>>print(str5.upper())
ABC

3. startswith(判断开头),endswith(判断结尾)
>>>print(str5.startswith('ab'))
True

4. format用法
!----------方式1(按照位置替换)
>>>str6 = 'my name is {}, my age is {}!'
>>>str7 = str6.format('HY',23)
>>>print(str7)
my name is HY, my age is 23!

!---------方式2(按照索引替换)
>>>str6 = 'my name is {1}, my age is {0}!'
>>>str7 = str6.format(23,'HY')
>>>print(str7)
my name is HY, my age is 23!

!---------方式3(指名道姓替换)
>>>str6 = 'my name is {name}, my age is {age}!'
>>>str7 = str6.format(age = 23,name = 'HY')
>>>print(str7)
my name is HY, my age is 23!

5. split,rsplit(从右边切分)

6. join(字符串拼接)
name = 'hy'
age = '23'
print(':'.join([name,age]))

7. replace
>>>str8 = 'abc def'
>>>str8.replace('def','abc')  #第一个参数是旧参数,第二个参数是新参数
>>>print(str8)
'abc abc'

8. isdigit(判断字符串是否是数字)
>>>ID = input('请输入ID')
>>>print(ID)

4.列表类型

#[]括号内以逗号隔开,可存放多个不同类型的值
>>>list = ['abc','def',11,1.0,['csv','xml']]
列表在内存
可变类型与不可变类型
列表是可变类型:列表中的值改变后,内存地址不变
字符串是不可变类型:字符串值改变后,内存地址也改变

取列表值

>>>list = ['abc','def',11,1.0,['csv','xml']]
>>>print(list[0])
abc
>>>print(list[4][0])
csv

列表内置方法

>>>list = ['hy',23,'male',190,70]
1.按索引存取值(正向存取,反向存取),可存可取
>>>print(list[4])
70
>>>print(list[-2])
190

2.切片(顾头不顾尾,步长)
>>>print(list[1:5])
[23,'male',190,70]
>>>print(list[1:5:2])
[23,190]

3.长度
>>>print(len(list))
5

4.成员运算in和not in、
>>>print('hy' in list)
True

5.追加
>>>list.append('abc')
>>>list.append('def')
>>>print(list)
['hy',23,'male',190,70,'abc','def']

6.删除
>>>print(list.pop())   #最后一个
>>>print(list.pop(0))    #第一个
>>>>list.remove('hy')    #pop有返回值,remove没有返回值

7.循环
>>>for i in list:
    print(list)

5.字典类型

在{}内,以逗号隔开,可存放多个值,每个值以key:value形式存放
>>>dict = {'name':'csv','pwd':'123'}
>>>print(dict['name'])
csv

6.布尔类型

True or False
>>>print(10 == 10)
True
>>>print(10 == 11)
False

布尔类型的重点知识!!!:

所有数据类型都自带布尔值
1、None,0,空(空字符串,空列表,空字典等)三种情况下布尔值为False
2、其余均为真 

11.格式化输出

可以在输出时给字符串类型做一次替换
%s,%d占位符可以替换一个数字类型

>>>str = '尊敬的用户,您的话费余额为%s元。' % 100
>>>print(str)
尊敬的用户,您的话费余额为100元。

12.for循环

迭代式循环:for,语法如下
for i in range(10):
    缩进的代码块
>>>list = [1,2,3,4,5]
for i in list:
    print(i)
1
2
3
4
5
for i in range(10):   #0-9
    pass

for i in range(3,10):   #3-9
    pass
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容